码迷,mamicode.com
首页 > 其他好文 > 详细

小程序页面获取滚动条高度

时间:2018-04-16 13:02:05      阅读:3728      评论:0      收藏:0      [点我收藏+]

标签:abs   set   har   view   重试   无法   OLE   一键   sharp   

没有用过vue等MVVM的框架,直接开始做小程序,没有dom操作真是各种不适应,思维有时都转换不过来

想要做的效果是  很常见的滚动条超出某个元素时,该元素固定在顶部

网上看到的获取滚动条高度及返回顶部的代码

onPageScroll:function(e){ // 获取滚动条当前位置
    console.log(e)
},
goTop: function (e) {  // 一键回到顶部
 if (wx.pageScrollTo) {
    wx.pageScrollTo({
      scrollTop: 0
    })
  } else {
    wx.showModal({
      title: ‘提示‘,
      content: ‘当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。‘
    })
  }
}  

在api上实在找不到在没有任何触发情况下获取view在视图中的位置  只能退而求其次,当点击元素时会获取到当前元素的所有信息,其中的detail.y就是在Y轴上的位置

代码如下:

<view class=‘tab-con‘ bindtap="getTabScrollTop">
    <view class="tab {{tabFixed ? ‘tab-fixed‘:‘‘}}">
      <view>二月</view>
      <view>三月</view>
      <view>四月</view>
    </view>
  </view>

 

js代码大概如下

Page({
  data: {
    tabScrollTop: 0,
    tabFixed: false
  },
  getTabScrollTop: function (e) {
    this.setData({
      tabScrollTop: e.detail.y,
    });
  },
  onPageScroll: function (e) { // 获取滚动条当前位置
      if (e.scrollTop > this.data.tabScrollTop) {
        this.setData({
          tabFixed: true
        })
      }else{
        this.setData({
          tabFixed: false
        })
      }
  },
})  

在没有任何点击触发下,还不知道该怎么做

小程序页面获取滚动条高度

标签:abs   set   har   view   重试   无法   OLE   一键   sharp   

原文地址:https://www.cnblogs.com/Anne3/p/8855173.html

(0)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!