微信小程序实现跟随菜单效果和循环嵌套加载数据

网友投稿 406 2023-03-15


微信小程序实现跟随菜单效果和循环嵌套加载数据

本文实例为大家分享了微信小程序实现跟随菜单效果、微信小程序循环嵌套加载数据,供大家参考,具体内容如下

效果如图:

代码如下:

wxml

//使用循环嵌套data数据格式写对即可

{{item.txt}}

{{item.txt}}

{{item.name}}

js

Page({

data: {

toView: 'red1',

_click:0,

left: [{ txt: '新品', id: 'new' }, { txt: '手机', id: 'phone' }, { txt: '电视', id: 'mv' }, { txt: '电脑', id: 'computer' }],

right: [

{ txt: '新品', id: 'new',li: [{ src: '../../assets/images/max1.jpg', name: '小米noto' }, { src: '../../assets/images/max1.jpg', name: '小米mix' }, { src: '../../assets/images/max3.jpg', name: '小米5c' }, { src: '../../assets/images/max2.jpg', name: '小米notp' }, { src: '../../assets/images/max2.jpg', name: '小米note5' }, { src: '../../assets/images/max2.jpg', name: '小米6' }]},

{ txt: '手机', id: 'phone',li: [{ src: '../../assets/images/max2.jpg', name: '小米6s' }, { src: '../../assets/images/max3.jpg', name: '小米max' }, { src: '../../assets/images/max2.jpg', name: '小米5s' }, { src: '../../assets/images/max1.jpg', name: '小米li' }, { src: '../../assets/images/max3.jpg', name: '小米4' }, { src: '../../assets/images/max1.jpg', name: '小米max' }]},

{ txt: '电视', id: 'mv', li: [{ src: '../../assets/images/max3.jpg', name: '小米6' }, { src: '../../assets/images/max2.jpg', name: '小米mix' }, { src: '../../assets/images/max1.jpg', name: '小米7s' }, { src: '../../assets/images/max3.jpg', name: '小米2' }, { src: '../../assets/images/max1.jpg', name: '小米note7' }, { src: '../../assets/images/max3.jpg', name: '小米8' }] },

{ txt: '电脑', id: 'computer', li: [{ src: '../../assets/images/max1.jpg', name: '小米2' }, { src: '../../assets/images/max1.jpg', name: '小米mix' }, { src: '../../assets/images/max2.jpg', name: yoWfS'小米max' }, { src: '../../assets/images/max1.jpg', name: '小米6' }, { src: '../../assets/images/max3.jpg', name: '小米note' }, { src: '../../assets/images/max1.jpg', name: '小米max' }] }]

},

scroll: function (e) {

console.log(e)//右侧列表滑动-左侧列表名称样式跟着改变,然而我不会写,搁置中,谁会告诉我,谢谢!

},

tap: function (e) {

var j = parseInt(e.currentTarget.dataset.i);

this.setData({

toView: this.data.left[j].id,//控制视图滚动到为此id的

_click:j //控制左侧点击后样式

})

},

})

wxss

page{border-top:1px solid #f6f6f6;}

.left{

height:100%;

width: 19%;

display: inline-block;

background:#fff;

text-align:center;

border-right:1px solid #eee;

}

.leftlist{

font-size:12px;

padding:10px;

}

.right{

height:100%;

width: 80%;

display: inline-block;

background:#fff;

text-align:center;

}

.line{

width:15px;

height:1px;

background:#ddd;

display:inline-block;

vertical-align:super;

margin:0 15px;

}

.li{

height:10%;

width:30%;

display:inline-block;

text-align:center;

}

.li image{width:60px;height:60px;}

.li .name{

font-size:12px;

display:block;

color:#888;

overflow:hidden;

white-space:nowrap;

text-overflow:ellipsis;

}

.title{padding:20px 0;}

.yes{color: #f99;font-size: 14px;}

友情提示:

1、左侧点击样式改变:

利用自身index与点击的元素的index比较。

data-i=“{{获取当前index传给_click保存}}”,

class=”leftlist {{index==_click?'yes':”}}”,

此处index是自身的,如果自身和点击的一致就添加,yes类名,否侧滞空清除yes样式。

2、点击左侧,右侧跟随:

利用scroll-into-view=”{{id}}”, 视图会滚动到id为此id的view标签。我是直接从data数据里取得id,也可以直接获取点击元素id。

3、循环嵌套:data数据格式写对,按照官方文档就行。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解IntelliJ IDEA 中如何配置多个jdk版本即(1.7和1.8两个jdk都可用)
下一篇:网关api种类(api网关设计原则)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~