禁用iPad的web应用程序的垂直弹跳效果(Disable vertical bounce effe

2019-06-24 19:50发布

有没有一种方法来禁用滚动DIV反弹的影响?

到目前为止,我已经尝试过这些东西,但没有奏效。 请帮忙!

如何在iPhone上禁用垂直弹跳/滚动在移动Web应用程序

不能用的UIScrollView和pagingEnabled =禁用反弹YES

iPad的Safari浏览器:禁用滚动和反弹的效果呢?

滚动时禁用UITableView的垂直弹跳

http://www.iphonedevsdk.com/forum/iphone-sdk-development/996-turn-off-scrolling-bounces-uiwebview.html

谢谢!

Answer 1:

如果您使用科尔多瓦1.7,只需打开Cordova.plist文件,并设置关键UIWebViewBounceNO。



Answer 2:

打开你的PhoneGap项目config.xml文件并从默认时真亦假更改UIWebViewBounce:

    <preference name="UIWebViewBounce" value="false" />

无法想象,为什么默认为真...



Answer 3:

基于您的评论,您正在使用的代码是完全禁用滚动。 如果你想滚动,但没有反弹的效果,尝试这样的事情:

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();
    }
});

我发现这个解决方案在这里 。 请让我知道这对你有没有用。



Answer 4:

这将帮助你放置.scroll类,你希望仍然有滚动的元素。

发生了什么是所有移动触摸屏默认情况下禁用。 如果你想滚动元件在它的.scroll类,然后将其设置门为true,以允许其通过。

在触摸结束你的门重置为false。

这适用于IOS5和6可以在Chrome和Safari浏览器工作

@看这个帖子把它扩大
如何防止页面滚动滚动DIV元素是什么时候?

唯一的缺点这是,如果你在滚动滚动元件的弹性效应允许在滚动设置为true滚动传递了树。 手动设置滚动条的位置得到由可怕的反弹效果覆盖。
我敢打赌,那些苹果friggers有本地实现与在硬连线的每一步设定的时间在户外跑步滚动。

所以,如果您滚动至-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
  })  
})


Answer 5:

我知道这可能不是最好的方式,但它的工作原理。

下面是我做的 -

#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;


文章来源: Disable vertical bounce effect in an ipad web app