2011-10-11 20 views
21

Il solito:Come disabilitare lo scorrimento su una webapp per iPad?

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

non funziona per me. Sto cercando di rendere il mio iPad webapp più nativo possibile. Qualsiasi risposta è apprezzata.

+0

possibile duplicazione di [Disabilita lo scorrimento in un'applicazione web iPhone?] (http://stackoverflow.com/questions/2890361/disable-scrolling -in-un-iphone-web-application) – Gajus

risposta

52

Inserire questo gestore sull'elemento document direttamente, non su body.

Ho avuto successo con il seguente:

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

Poi, con jQuery:

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

Questo sarà anche utile se si desidera gestire diversi orientamenti:

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

Grazie mille perfettamente funzionante – Valli

+0

Solo curioso, potresti anche mettere il gestore sull'oggetto 'window'? – skeggse

Problemi correlati