2012-05-11 55 views
6

我想在webapp中禁用iOS overscroll,但仍允許滾動身體。禁用iOS Overscroll,但允許身體滾動

$(document).on('touchmove', function(e) { 
    e.preventDefault(); 
}); 

完全禁用滾動(如人們所期望的那樣)。

有沒有辦法做我想做的事情?

+0

這是一個答案,一個相關的問題,但它涵蓋了這個問題爲好,http://stackoverflow.com/questions/2890361/disable-scrolling-in-an-iphone-網絡的應用程序/ 26853900?STW = 2#26853900。 – Gajus

+0

我發現這個腳本解決了這個問題! :) https://github.com/lazd/iNoBounce –

回答

7

我有相當多的same issue得到英寸這會幫助你:

// Disable overscroll/viewport moving on everything but scrollable divs 
$('body').on('touchmove', function (e) { 
     if (!$('.scrollable').has($(e.target)).length) e.preventDefault(); 
}); 
+6

一與此相關的挑戰是,如果您一直滾動到頂部或底部,則仍然可以覆蓋整個頁面! – Chet

2
document.body.addEventListener('touchmove',function(e){ 
    if(!$(e.target).hasClass("scrollable")) { 
     e.preventDefault(); 
    } 
}); 

試試這個,我只是通過谷歌

+0

因此,我添加了滾動類到正文(因爲這是我想要能夠滾動),但它仍然使身體不可滾動(並且消除了過度滾動) –

相關問題