在iPad应用程序中禁用垂直反弹效果
有没有办法在滚动div禁用反弹效果?
到目前为止,我已经尝试过这些东西,但都没有工 请帮忙!
如何在移动Web应用程序中禁用iPhone上的垂直反弹/滚动
无法使用UIScrollView和pagingEnabled = YES禁用反弹
iPad的Safari浏览器:禁用滚动,反弹效果?
滚动时禁用UITableView垂直反弹
和
http://www.iphonedevsdk.com/forum/iphone-sdk-development/996-turn-off-scrolling-bounces-uiwebview.html
谢谢!
如果您使用的是Cordova 1.7,只需打开Cordova.plist文件并将UIWebViewBounce键设置为NO 。
打开phoneGap项目的config.xml
文件,并将UIWebViewBounce从默认值更改为false:
<preference name="UIWebViewBounce" value="false" />
无法想象为什么默认是真的…
根据你的评论,你正在使用的代码是禁用滚动。 如果你想滚动,但没有反弹效果,尝试这样的事情:
var xStart, yStart = 0; document.getElementById("scrollableDiv").addEventListener('touchstart',function(e) { xStart = e.touches[0].screenX; yStart = e.touches[0].screenY; }); document.getElementById("scrollableDiv").addEventListener('touchmove',function(e) { var xMovement = Math.abs(e.touches[0].screenX - xStart); var yMovement = Math.abs(e.touches[0].screenY - yStart); if((yMovement * 3) > xMovement) { e.preventDefault(); } });
我在这里find这个解决scheme 请让我知道这对你有没有用。
这将帮助你将.scroll类放在你想要滚动的元素上。
发生什么事情是所有的触摸动作默认是禁用的。 如果你想要滚动的元素上有.scroll类,那么它将gate设置为true以允许它通过。
触摸结束时,将门重置为假。
这适用于IOS5和6,可以在Chrome和Safari中使用
看@这篇文章来扩展它
如何在滚动DIV元素时防止页面滚动?
唯一的解决方法就是如果你滚动滚动元素,弹性效果允许滚动被传递到树上,而滚动设置为true。 手动设置滚动位置被可怕的反弹效果覆盖。
我敢打赌,这些苹果公司的冷冻机在每一步硬盘上都有一个固定的时间滚动运行。
所以,如果你滚动到-20,我认为它很难把每一步变成一个循环,而不是检查它在哪里。 依次滚动至-20 -19 -18等。
我们必须想办法解决这个问题! (实际上是把它输出,我有一个主意!)
$(function(){ var scroll = false var scroll_element; $('body').on('touchmove',function(e){ if(!scroll){ e.preventDefault() } }) $('body').on('touchend',function(e){ scroll = false }) $('.scroll').on('touchstart',function(e){ scroll_element = this scroll = true }) })
我知道这可能不是最好的方式,但它的工作原理。
这是我做的 –
#scrollableDiv { position:fixed; top:50px; width:300px; height:500px; word-wrap: break-word; overflow-y: scroll; } document.getElementById("scrollableDiv").innerHTML = longText; document.getElementById("scrollableDiv").scrollTop = 0;