做Web應用,碰到問題,當拖動頁面的時候,IOS的整個WebView會被拖動,導致上下方有灰色空白出現,並且影響內部滑動的體驗。
在網上找了個神祕代碼,大概意思就是監聽觸摸移動的事件,如果並非滑動容器,就禁止滑動。
這個神祕代碼解決了其中一個問題,但是當我把他放到另一個頁面的時候,發現整個頁面的滑動都被禁止了。對比兩個代碼,完美解決的DIV採用了mui的滑動組件(mui-scroll)即會被判斷爲滑動容器,而沒有起到效果的DIV則用的瀏覽器自帶滑動,沒有做其他設置。
神祕代碼:
document.body.addEventListener('touchmove', function(e) {
if(e._isScroller) return;
e.preventDefault();
}, {
passive: false
});