微信小程序使用scroll-view导致吸顶无效或vant-sticky吸顶无效

这篇具有很好参考价值的文章主要介绍了微信小程序使用scroll-view导致吸顶无效或vant-sticky吸顶无效。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

我们先清楚为什么要使用scroll-view?

在做回到顶部时,需要拿到实时的滚动距离,这时候就得使用上scroll-view了

记录一次在做 微信小程序开发时,在没有使用scroll-view的时候,我们使用vant-sticky做吸顶效果的时候可以正常使用。

但是当我们使用scroll-view时,突然发现吸顶失效了

我们可以看到Vant Weapp也是非常的细心,帮我们做了解答

通过 scroll-top 与 offset-top 属性可以实现在 scroll-view 内嵌套使用。

<scroll-view
  bind:scroll="onScroll"
  scroll-y
  id="scroller"
  style="height: 200px;"
>
  <view style="height: 400px; padding-top: 50px;">
    <van-sticky scroll-top="{{ scrollTop }}" offset-top="{{ offsetTop }}">
      <van-button type="warning">嵌套在 scroll-view 内</van-button>
    </van-sticky>
  </view>
</scroll-view>
Page({
  data: {
    scrollTop: 0,
    offsetTop: 0,
  },

  onScroll(event) {
    wx.createSelectorQuery()
      .select('#scroller')
      .boundingClientRect((res) => {
        this.setData({
          scrollTop: event.detail.scrollTop,
          offsetTop: res.top,
        });
      })
      .exec();
  },
});

你可能有点看不懂一些属性是干嘛的,你只需要这样使用即可:

使用竖向滚动时,需要给scroll-view一个固定高度,通过 WXSS 设置 height。组件属性的长度单位默认为px,2.4.0起支持传入单位(rpx/px)。

//scroll-view需要有高度.....
<scroll-view bind:scroll="onScroll" scroll-y>
  <view>
    <van-sticky scroll-top="{{ scrollTop }}" offset-top="{{ offsetTop }}">
      //需要吸顶的内容
    </van-sticky>
  </view>
</scroll-view>
Page({
  data: {
    scrollTop: 0,
    offsetTop: 0,
  },

  onScroll(event) {
      this.setData({
        scrollTop: event.detail.scrollTop
      });
  },
});

好了,是不是非常简单,有任何问题欢迎下方评论文章来源地址https://www.toymoban.com/news/detail-483861.html

到了这里,关于微信小程序使用scroll-view导致吸顶无效或vant-sticky吸顶无效的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【微信小程序】动态修改page的wxss样式/scroll-view使用/监听子组件

    静态写法 直接使用下面的写法,是静态的。 动态写法 在wxml最外层套一个自己定义的page的class。 如果想修改.page的样式,再用普通的动态class判断改变就可以了。 例如:改变背景颜色 参考:微信小程序如何动态修改page标签的css样式 设置id时需要注意下:id 的设置要求是字母

    2024年02月05日
    浏览(60)
  • 微信小程序scroll-view去掉滚动条

    微信小程序scroll-view去掉滚动条 微信官方文档上面给出了显示和隐藏滚动条的属性 show-scrollbar ,把该属性设置为false,文档要求使用该属性要开启 enhanced 属性,把这个属性设置为true即可; 通过CSS设置滚动条隐藏: 值得注意的是: ::-webkit-scrollbar前要有 scroll-view 的标签名 或

    2024年02月11日
    浏览(60)
  • 微信小程序触底加载scroll-view

    需求:有个固定高度的容器,实现容器里面的内容触底加载 1、内容盒子的高度 2、盒子里内容的总高度 3、滚动条的scrollTop 触底加载的原理就是 当里面的容器触底的时候进行分页,请求接口合并数据 公式 盒子的高度+滚动条的scrollTop = 内容高度 使用原生的计算方法比较麻烦

    2024年02月09日
    浏览(46)
  • 微信小程序--开发横向滚动条scroll-view

    一、话不多说,上代码 .wxml文件写法 css样式 js写法 二、解析  scroll-x=\\\"true\\\":表明是横向滚动 class=\\\"{{currentTab==index?\\\'scroll_item\\\':\\\'\\\'}}\\\":当点击时才会变色,其中currentTab的初始值是0,通过点击事件更改值

    2024年02月12日
    浏览(54)
  • 关于uniapp微信小程序scroll-view组件使用show-scrollbar隐藏不了滚动条

    这里关于使用  scroll-view组件  时候有滚动条 想要隐藏滚动条但是使用show-scrollbar没有效果 这时候又使用类名隐藏滚动条 使用id隐藏滚动条都不行 解决方法:在使用  scroll-view组件 的页面或者app 页面加上以下代码就可以了         

    2024年02月12日
    浏览(45)
  • 微信小程序scroll-view的scroll-into-view无效问题解决办法

    微信小程序的scroll-view组件中,scroll-into-view属性可以指定滚动到指定id的位置。但有时候,该属性可能会出现无效的情况。下面是几种可能的原因和解决办法: 1.scroll-into-view属性指定的id不存在或不可见 如果scroll-into-view属性指定的id在页面中不存在,或者该id所在的区域不可

    2024年02月02日
    浏览(58)
  • 微信小程序 uniapp 电商项目使用scroll-view实现左右菜单联动,点击菜单子分类联动对应商品

    最近写了个微信小程序项目,一开始不理解scroll-view用法,用的另外一种方法写的,虽然实现了效果,但是代码层面来说,不大合理,后来又通过努力,用scroll-view实现了效果。现写个文章做个记录,方便自己和大家学习记录。 效果图请看第一张。布局:左右布局,右边又分

    2024年02月14日
    浏览(75)
  • Scroll-view的用法(网页和微信小程序)

    微信小程序: 1. 在wxml文件中,使用scroll-view标签包裹需要滚动的内容。 例如,下面的代码将一个view组件包裹在scroll-view中: 2. 设置scroll-view的高度和宽度,以及滚动方向,可以通过设置属性来控制,如scroll-x和scroll-y。 scroll-x和scroll-y分别用于控制scroll-view的横向滚动和纵向滚

    2024年02月03日
    浏览(45)
  • 微信小程序 scroll-view 实现自动滑动到底部

    要实现实时聊天功能的话,那么每次有新的消息进来之后,要自动的滚动到底部。 scroll-view 有一个属性 scroll-into-view : 把新进来的消息, push 添加到消息列表 messageList 中。 但页面不会自动往下滚动。 1、在 scrill-view 节点最下面加一个垫片节点。 需要说明的是:这里的 3 个

    2024年02月10日
    浏览(59)
  • uniapp/微信小程序 scroll-view 设置scroll-x 失效问题解决

    实现一个横向滑动的scrollview,直接给scroll-view设置 scroll-x ,但是并没有实现想药实现横向滑动的效果,先看代码 仔细看了官网后发现有这样一句话, 然而加上也并没有实现,直接说解决方案吧! 使用横向滚动时,不仅仅需要给 scroll-view 添加 white-space: nowrap; 样式,还要给他

    2024年02月16日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包