首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不检查设备的情况下禁用移动浏览器上的滚动?

如何在不检查设备的情况下禁用移动浏览器上的滚动?
EN

Stack Overflow用户
提问于 2016-04-20 12:59:31
回答 1查看 678关注 0票数 1

有趣的问题:

如何禁用移动设备上的滚动,但在代码中不需要检查移动浏览器等。

我在写移动版的网站。在网页浏览器中,我的功能运行良好!

当我叫Scroll(“off”)时,它就停止了。但是在移动设备(ios)上,我仍然可以触摸移动的内容。

有人能帮助修改这种情况下的函数吗?结果必须是:网页上没有卷轴,移动设备上没有触摸动作。

我所拥有的是:

代码语言:javascript
复制
function Scroll(str)
    {
      var scrollPosition = [
        self.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft,
        self.pageYOffset || document.documentElement.scrollTop  || document.body.scrollTop
      ];

      if(str=="off")
      {
        var html = jQuery("html");
        html.data("scroll-position", scrollPosition);
        html.data("previous-overflow", html.css("overflow"));
        html.css("overflow", "hidden");
        window.scrollTo(scrollPosition[0], scrollPosition[1]);
      }
      else
      {
        var html = jQuery("html");
        var scrollPosition = html.data("scroll-position");
        html.css("overflow", html.data("previous-overflow"));
        window.scrollTo(scrollPosition[0], scrollPosition[1]);
      }
    }
EN

回答 1

Stack Overflow用户

发布于 2016-04-20 13:24:18

解决方案是:

代码语言:javascript
复制
$('body').bind('touchmove', function(e){e.preventDefault()}); 
$("body").unbind("touchmove");  
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36744599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档