微信小程序实现web端锚点功能

1.wxml布局样式

<view class='container'>
<view class='left'>
  <scroll-view class='leftScroll' scroll-y>
    <block wx:for="{{list}}" wx:key="list">
      <view bindtap='clickScroll' data-id="{{item}}">{{item}}</view>
    </block>
  </scroll-view>
</view>
<view class='right'>
  <scroll-view class='rightScroll' scroll-y scroll-into-view="{{toView}}" scroll-with-animation="true">
    <block wx:for="{{list}}" wx:key="list">
      <view bindtap='clickScroll' id="{{item}}">{{item}}</view>
    </block>
  </scroll-view>
</view>
</view>

2.wscc样式

page{
  width:100%;
  height:100%;
}
.container{
  flex-direction: row;
  height:100%;
}
.left{
  width:100px;
  height:80%;
}
.left scroll-view{
  height:100%;
}
.left view{
  padding:10px;
  text-align: center;
  background-color:#0f0;
  margin-bottom:10px;
  color:#fff;
}
.right{
  flex:1;
  height:80%;
}
.right scroll-view{
  height:100%;
}
.right view{
  height:150px;
  background-color:#f00;
  color:#fff;
  margin-bottom:10px;
}

3.js

data: {
    list: ["list0", "list1", "list2", "list3", "list4", "list5", "list11", "list12", "list13", "list14", "list15", "list25", "list26", "list27", "list28", "list29", "list30"],
    toView: ''
  },

clickScroll:function(e){
    var id = e.currentTarget.dataset.id
    this.setData({
      toView:id
    })
    console.log(e.currentTarget.dataset);
  },

 4.效果图

5.当内容超出固定高度时,小程序中会默认出现滚动条,滚动条的样式影响到美观,所以设置如下样式可将滚动条样式隐藏掉

::-webkit-scrollbar{
  width:0;
  height:0;
  color:transparent;
}

 

posted @ 2018-08-21 11:36  董七  阅读(8092)  评论(0编辑  收藏  举报