Jquery 禁用移动设备的水平滚动

Jquery 禁用移动设备的水平滚动,jquery,html,css,Jquery,Html,Css,我希望禁用移动设备的垂直滚动。使用: body {overflow-x:hidden} 适用于普通浏览器,但在移动设备上,如果有比屏幕更宽的元素,则允许侧面滚动 我已尝试使用此代码: jQuery(document).ready(function($) { var $body = $(document); $body.bind('scroll', function() { // "Disable" the horizontal scroll. i

我希望禁用移动设备的垂直滚动。使用:

body {overflow-x:hidden}
适用于普通浏览器,但在移动设备上,如果有比屏幕更宽的元素,则允许侧面滚动

我已尝试使用此代码:

jQuery(document).ready(function($) {
    var $body = $(document);
    $body.bind('scroll', function() {
        // "Disable" the horizontal scroll.
        if ($body.scrollLeft() !== 0) {
            $body.scrollLeft(0);
        }
    });
});
但它允许侧面滚动(在手机上),但“跳跃”滚动回右侧,这不是一个完美的解决方案

我试过使用这个:

    <meta name="viewport" content=" width=device-width; initial-scale=1.0; user-scalable=0;" /> 
 $(document).bind("touchmove",function(event){
            event.preventDefault();
      });

$(文档).bind(“touchmove”),函数(事件){
event.preventDefault();
});
这非常有效,完全禁用移动滚动,问题是它同时禁用水平和垂直滚动(我只希望禁用水平滚动)。

尝试以下方法:

html, body {
  overflow-x: hidden;
}
body {
  position: relative
}
试试这个:

html, body {
  overflow-x: hidden;
}
body {
  position: relative
}
试试这个:

html, body {
  overflow-x: hidden;
}
body {
  position: relative
}
试试这个:

html, body {
  overflow-x: hidden;
}
body {
  position: relative
}

我在触摸设备的postJavascript解决方案上没有看到任何jquery/js解决方案——我在触摸设备的postJavascript解决方案上没有看到任何jquery/js解决方案——我在触摸设备的postJavascript解决方案上没有看到任何jquery/js解决方案——我在触摸设备的postJavascript解决方案上没有看到任何jquery/js解决方案设备——在某些情况下,这对我更有效:html,body{max width:100%!important;overflow-x:hidden!important;}没错。令人惊讶的是,仅将溢出设置为body不起作用。只有html+body在某些情况下,这对我更有效:html,body{max width:100%!重要;overflow-x:hidden!重要;}没错。令人惊讶的是,仅将溢出设置为body不起作用。只有html+body在某些情况下,这对我更有效:html,body{max width:100%!重要;overflow-x:hidden!重要;}没错。令人惊讶的是,仅将溢出设置为body不起作用。只有html+body在某些情况下,这对我更有效:html,body{max width:100%!重要;overflow-x:hidden!重要;}没错。令人惊讶的是,仅将溢出设置为body不起作用。仅html+正文