2013-06-12 10 views
10

Sto utilizzando Pep.js per il trascinamento cinetico su multi-touch, ma i miei eventi di trascinamento non vengono registrati perché quando provo a trascinare un oggetto nel safari , su iOS, finestra si muove la finestra stessa e segue la mia resistenza.Impedisci a iOS Safari di spostare la finestra della pagina Web in modo da trascinare l'evento può accadere

Come posso impedire alla finestra del browser di seguire il trascinamento in modo da poter trascinare il numero nella mia pagina Web?

Questa è la pagina Web in questione: http://goo.gl/TsHgh. Fare clic sul collegamento e una diapositiva <div>, è quel div che è trascinabile. Funziona su browser desktop, ma non può essere trascinato su multi-touch perché Safari sposta la finestra insieme al mio trascinamento.

risposta

-3

tenta di aggiungere

<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no"/> 

Per dirigere tag nel tuo html

+2

che disabilita lo zoom. Capisco che sia una buona pratica averlo, ma come impedirà alla finestra di muoversi? –

0

L'animazione è quello che causa il problema.

Bene, la classe a cui viene applicata l'animazione.

Rimuovere la classe al termine dell'animazione.

setTimeout(function(){ 
    $('#tabViewWindow').removeClass('animated').removeClass('bounceInRight'); 
}, 1200); 

Inoltre, per disattivare lo scorrimento sulla finestra:

html, body{ 
    overflow:hidden; 
} 
25

Ho trovato questa soluzione durante il lavoro con la #ionicframework

CSS:

html, body { 
    overflow:hidden; 
} 

JS:

$(window).bind(
    'touchmove', 
    function(e) { 
    e.preventDefault(); 
    } 
); 
+1

se applichiamo solo la regola di overflow non consentirà di scorrere la pagina verso il basso. Penso che dovrebbe essere overflow-x – Harsha