简体   繁体   中英

How do I disable scrolling on an iPad webapp?

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.

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)">

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM