2013-06-12 12 views
10

Używam Pep.js do przeciągania kinetycznego w trybie multi-touch, ale moje zdarzenia przeciągania nie są rejestrowane, ponieważ gdy próbuję przeciągnąć obiekt w safari , na iOS, okno samo okno przesuwa się i podąża za moim przeciągnięciem.Zapobieganie przemieszczaniu się strony Safari przez okno strony sieci Web, więc zdarzenie przeciągania może się zdarzyć

Jak mogę zapobiec przeciągnięciu okna przeglądarki po przeciągnięciu, aby można było przeciągnąć <div> na mojej stronie internetowej?

Oto strona internetowa, o której mowa: http://goo.gl/TsHgh. Kliknij na link i slajdy <div>, jest to div, który można przeciągnąć. Działa na przeglądarkach komputerowych, ale nie można go przeciągać w trybie multi-touch, ponieważ Safari przesuwa okno wraz z moim przeciągnięciem.

Odpowiedz

-3

Spróbuj dodać

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

Aby udać tag w html

+2

, które po prostu wyłącza powiększanie. Rozumiem, że dobrą praktyką jest to, ale jak to uniemożliwi poruszanie się okna? –

0

animacji jest to, co jest przyczyną problemu.

Cóż, klasa, do której jest stosowana twoja animacja.

Usuń zajęcia po zakończeniu animacji.

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

Ponadto, aby wyłączyć przewijanie w oknie:

html, body{ 
    overflow:hidden; 
} 
25

Znalazłem to rozwiązanie podczas pracy z #ionicframework

CSS:

html, body { 
    overflow:hidden; 
} 

JS:

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

jeśli zastosujemy tylko regułę przepełnienia, nie będzie można przewijać strony. Myślę, że powinno to być overflow-x – Harsha

Powiązane problemy