微信小程序scroll-view實現(xiàn)滾動穿透和阻止?jié)L動的方法
scroll-view滾動穿透,阻止?jié)L動
頁面彈窗阻止?jié)L動是一種常見的問題,這里簡單介紹小程序scroll-view的一種解決方式
常用阻止?jié)L動方式
在不使用scroll-view的彈窗中, 為position為absolute或fixed的元素設(shè)置catchtouchmove空事件就可以阻止彈窗下的頁面因事件穿透滾動
<view catchtouchmove="doNothing"></view>
也可直接寫catchtouchmove,相當于綁定了事件名為true的事件
問題場景
在小程序中,在absolute或fixed的類彈窗布局中。要顯示列表、長文本段落等可滾動元素,必須使用scroll-view組件,無法阻止頁面本身的滾動
解決辦法
既然無法簡單的阻止事件穿透,就在頁面可滾動的元素本身想想辦法:
頁面滾動元素
小程序中的簡單布局,在頁面內(nèi)容超出一屏時,滾動的元素是page
如何讓頁面不滾動
將page的高度設(shè)為100%,頁面最外層放一個view,打開彈窗時通過一個class增加樣式,設(shè)頁面高度100%,overflow: hidden來停止?jié)L動
打開彈窗時設(shè)isStopBodyScroll為true,關(guān)閉時設(shè)為false
<view class="{{isStopBodyScroll ? 'scroll-lock' : ''}}">
<!-- 頁面內(nèi)容 -->
</view>
.scroll-lock {
height: 100%;
overflow-y: hidden;
}
存在的問題
這樣設(shè)置頁面會回到頂部,期待有更好的解決方式或官方對這個問題提供支持
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- 微信小程序 scroll-view隱藏滾動條詳解
- 微信小程序 scroll-view實現(xiàn)錨點滑動的示例
- 微信小程序(九)scroll-view組件詳細介紹
- 微信小程序 scroll-view實現(xiàn)上拉加載與下拉刷新的實例
- 詳解微信小程序scroll-view橫向滾動的實踐踩坑及隱藏其滾動條的實現(xiàn)
- 微信小程序 scroll-view組件實現(xiàn)列表頁實例代碼
- 微信小程序使用scroll-view標簽實現(xiàn)自動滑動到底部功能的實例代碼
- 微信小程序scroll-view組件實現(xiàn)滾動動畫
- 微信小程序scroll-view仿拼多多橫向滑動滾動條
- 微信小程序自定義scroll-view的實例代碼
相關(guān)文章
JavaScript?canvas實現(xiàn)字符雨效果
這篇文章主要為大家詳細介紹了JavaScript?canvas實現(xiàn)字符雨效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-06-06
js實現(xiàn)千分符和保留幾位小數(shù)的簡單實例
下面小編就為大家?guī)硪黄猨s實現(xiàn)千分符和保留幾位小數(shù)的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08
js實現(xiàn)四舍五入完全保留兩位小數(shù)的方法
這篇文章主要介紹了js實現(xiàn)四舍五入完全保留兩位小數(shù)的方法,涉及javascript針對浮點數(shù)的數(shù)值運算相關(guān)技巧,需要的朋友可以參考下2016-08-08

