移動端 點選滾動穿透的解決方案

2022-07-25 03:24:07 字數 575 閱讀 4925

一般都是touch和click混用導致的,  touch是立馬觸發的,touchend還會觸發一次click,導致上層元素touchend觸發的click會影響到下層元素。  

解決辦法:   只用touch 或者 只用click ;    使用fastclick 等一些自定義tap事件, 移除touchend之後觸發的那次click事件。

在開啟的彈窗或者遮罩層上滾動, 會影響到下層的body元素的滾動。 體驗很不好。

解決辦法, 在開啟彈框或遮罩層的時候,獲取html的scrolltop, 給body改為fixed定位, top值為負的scrolltop值。 關閉彈框的時候,把fixed定位去掉。還原scrolltop值。

<

style

>

.stopbodyscroll

style

>

<

script

>

function

stopbodyscroll() px`;

}function

openbodyscroll()

script

>

scroll 滾動穿透的解決方案

適用所有頁面有滾動且有彈出的情況,禁止彈層上滑動行為觸發底層頁面的滾動 頁面有滾動條,當有彈層彈出時,彈出層上touchmove事件會觸發底層頁面滾動 scrollview的高度固定,內部view的高度自由撐開,大於scrollview的高度時就會出現滾動條需要滾動的內容 如果出現彈層,在彈層彈出時...

滾動穿透問題完美解決方案

滾動穿透 簡單的說,滾動穿透就是彈層中有滾動時,滾動彈層滾動條背景下面內容也會滾動 目標 彈層滾動時,背景下面內容不會滾動,彈出層關閉後頁面的滾動位置仍在原處不會丟失!下面這段 直接引用,看效果 open modal one open modal two 這裡是可滾動內容 滾動 content 滾動...

移動端頁面滾動穿透問題解決方案

最近在做移動專案時遇到乙個頁面滾動穿透問題,具體場景是這樣的,在乙個可滾動的列表頁中開啟彈窗,底部的頁面理論上是不可滾動的,但是當滑動彈窗時,底部頁面會跟隨滾動,這就是所謂的頁面滾動穿透的問題。這個是比較常見的問題,基本都會遇到,google一下出解決方案也是挺多的。以下根據不同的適用場景總結一些解...