如何在 iPad 网络应用程序上禁用滚动?

发布于 2024-12-09 11:39:29 字数 182 浏览 0 评论 0原文

通常:

document.body.addEventListener('touchmove',function(event){event.preventDefault();},false); 

对我不起作用。我正在努力让我的 iPad 网络应用程序尽可能地原生。 任何答案表示赞赏。

The usual:

document.body.addEventListener('touchmove',function(event){event.preventDefault();},false); 

isn't working for me. I am trying to make my iPad webapp feel as native as possible.
Any answer is appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

樱娆 2024-12-16 11:39:29

将该处理程序直接放在 document 元素上,而不是放在 body 上。

我已经在以下方面取得了成功:

<meta name="viewport" content="user-scalable=1.0,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="format-detection" content="telephone=no">

然后使用 jQuery:

$(document).bind('touchmove', false);

如果您想处理不同的方向,这也将很有用:

<link rel="stylesheet" type="text/css" href="css/main.css" media="all">
<link rel="stylesheet" type="text/css" href="css/landscape.css" media="all and (orientation:landscape)">
<link rel="stylesheet" type="text/css" href="css/portrait.css" media="all and (orientation:portrait)">

Put that handler on the document element directly, not on the body.

I've had success with the following:

<meta name="viewport" content="user-scalable=1.0,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="format-detection" content="telephone=no">

Then with jQuery:

$(document).bind('touchmove', false);

This will also be useful if you want to handle different orientations:

<link rel="stylesheet" type="text/css" href="css/main.css" media="all">
<link rel="stylesheet" type="text/css" href="css/landscape.css" media="all and (orientation:landscape)">
<link rel="stylesheet" type="text/css" href="css/portrait.css" media="all and (orientation:portrait)">
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文