小程序-一进页面就滚动到最底端

点击消息后,进入消息页面,实现滚动到最底端的动画效果。

1、在页面的最下面增加一个带有id="bottom" 的组件

<view class="messages">
    <view class="item" wx:for="{{messages}}" wx:key="id">
        <navigator>
            <text class="title">{{item.title}}</text>
        </navigator>
        <text class="date">{{item.date}}</text>
        <navigator>
            <image src="{{item.image}}" />
        </navigator>
        <text class="summary">{{item.summary}}</text>
        <navigator class="expand">Read All</navigator>
    </view>
</view>
<view id="bottom"></view>

 2、在页面渲染的时候进行设置:

 /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {
        const query = wx.createSelectorQuery()
        query.select('#bottom').boundingClientRect()
        query.exec(res => {
          wx.pageScrollTo({
            scrollTop: res[0].top + 200
          })
        })
    },

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
小程序中,可以使用scroll-view组件来实现页面滚动。要实现页面直接滑动到最底端,可以在scroll-view组件中设置一个id属性,并在页面加载完成后使用wx.createSelectorQuery()获取该组件的节点信息,然后使用节点信息中的scrollHeight属性设置scroll-view的滚动位置。 具体实现步骤如下: 1. 在scroll-view组件中设置id属性,例如: ``` <scroll-view id="my-scroll-view" style="height: 100vh;"> <!-- 页面内容 --> </scroll-view> ``` 2. 在页面的onLoad函数中,使用wx.createSelectorQuery()获取scroll-view组件的节点信息: ``` onLoad: function () { let that = this; wx.createSelectorQuery().select('#my-scroll-view').boundingClientRect(function(rect){ that.setData({ scrollViewHeight: rect.height // 将scroll-view的高度存储到页面数据中 }); }).exec(); } ``` 3. 在页面的onReady函数中,使用wx.pageScrollTo()将scroll-view滚动到底部: ``` onReady: function () { let that = this; wx.createSelectorQuery().select('#my-scroll-view').boundingClientRect(function(rect){ that.setData({ scrollViewHeight: rect.height // 将scroll-view的高度存储到页面数据中 }); wx.pageScrollTo({ scrollTop: rect.height // 将页面滚动到最底部 }); }).exec(); } ``` 通过以上步骤,就可以实现页面直接滑动到最底部的效果。需要注意的是,在获取scroll-view节点信息时,需要使用wx.createSelectorQuery().select()方法,而不是wx.createSelectorQuery().selectAll()方法。因为后者会获取到多个节点信息,无法正确地获取scroll-view的高度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

佛佛ง

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值