小程序锚点标记

下面是我用 wepy 做的 一个 锚点跳转  提取有用信息 即可 =  上代码:


<!--=----------------------------------------锚点定位---------------------------------------------->

<style lang="less">
  page {
    height: 100%;
  }

  .scr {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }

  .test {
    height: 80px;
  }

  .list {
    position: fixed;
    z-index: 9;
    top: 30px;
    right: 10px;
  }
</style>
<template>
  <view class="maodian">
    <view class="list">
      <view bindtap='jumpTo' data-opt="list0">list0</view>
      <view bindtap='jumpTo' data-opt="list11">list11</view>
      <view bindtap='jumpTo' data-opt="list29">list29</view>
    </view>
    <scroll-view
      scroll-into-view="{{toView}}"
      scroll-y="true"
      scroll-with-animation="true"
      class="scr">
      <view
        wx:for="{{list}}"
        id="{{item}}"
        wx:key="this"
        data-rol="{{item}}"
        class="test">{{item}}
      </view>
    </scroll-view>
  </view>
</template>

<script>
  import wepy from 'wepy'

  export default class Me extends wepy.page {
    config = {
      navigationBarTitleText: '555'
    }
    components = {}
    data = {
      list: [
        "list0", "list1", "list2", "list3", "list4", "list5",
        "list6", "list7", "list8", "list9", "list10", "list11",
        "list12", "list13", "list14", "list15", "list16", "list17",
        "list18", "list19", "list20", "list21", "list22", "list23",
        "list24", "list25", "list26", "list27", "list28", "list29"
      ],
      toView: 'eeede'
    }

    computed = {}

    methods = {
      jumpTo(e) {
        this.toView = e.currentTarget.dataset.opt
        this.$apply()
        console.log(e.currentTarget.dataset.opt)
      }
    }

    events = {}

    onLoad() {
    }
  }
</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于微信小程序触底后进行锚点跳转,可以通过使用小程序的scroll-view组件和wxs实现。具体步骤如下: 1. 在scroll-view组件中设置scroll-top属性和id属性,id属性为锚点标记。 2. 在wxs中定义一个函数,用来监听scroll-view组件的滚动事件,当滚动到底部时,获取到锚点的位置并进行跳转。 以下是一个示例代码: ``` <!--wxml文件--> <scroll-view scroll-y="true" scroll-top="{{scrollTop}}"> <view id="anchor1"></view> <!--省略中间的内容--> <view id="anchor2"></view> </scroll-view> <!--wxss文件--> /*设置scroll-view组件的高度*/ scroll-view { height: 100%; } <!--wxs文件--> var anchorTop = 0; module.exports = { //监听scroll-view组件的滚动事件 handleScroll: function (e) { //获取到scroll-view组件的滚动距离 var scrollTop = e.detail.scrollTop; //获取到锚点的位置 var query = wx.createSelectorQuery(); query.select('#anchor1').boundingClientRect(); query.select('#anchor2').boundingClientRect(); query.exec(function (res) { anchorTop = res[1].top;//获取到锚点的位置 //当滚动到底部时,进行锚点跳转 if (scrollTop + 500 >= anchorTop) { wx.pageScrollTo({ scrollTop: anchorTop, duration: 300 }) } }) } } ``` 在以上示例代码中,wxs文件中的handleScroll函数用来监听scroll-view组件的滚动事件,并且获取到锚点的位置。当滚动到底部时,使用wx.pageScrollTo函数进行锚点跳转,将scrollTop设置为锚点的位置,duration为滚动的时间。 需要注意的是,以上示例代码中的锚点位置获取方式仅适用于锚点距离scroll-view组件顶部的距离小于500px的情况,如果锚点距离顶部的距离较大,需要根据实际情况进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值