2012-04-11 2 views
7

Ich habe swipeleft/swiperight funktioniert gut in meiner App, aber wenn der Benutzer den Mauszeiger über ein Anker-Tag, wird die Wisch-Aktion nicht ausgelöst.JQuery-Mobile Swipe funktioniert nicht, wenn Sie auf einem Anchor-Tag starten

Wie kann ich den Wischvorgang auch dann ausführen, wenn der Benutzer den Mauszeiger über ein Anker-Tag bewegt?

EDIT: Es sieht aus wie dies nur ein Problem in Browsern auf Computern ist - Tabletten funktionieren gut.

Antwort

8

Sie können mit der normalen linken Taste in jedem modernen Browser auf dem Desktop wischen.

Stellen Sie sicher, dass Sie die Standardaktion für das Dragstart-Ereignis in Ihrem div verhindern.

$("div").bind('dragstart', function(event) {event.preventDefault(); }); 

Ich habe eine Arbeitskopie hier ...

http://jsfiddle.net/38nXe/

+1

Hmm ... Ist für mich nicht. Ich habe Karussell div> ul> li> a> img. Versucht, den Widerstand für jedes Element in diesem Baum zu verhindern. Scheint anderes Problem, es funktioniert, wenn ich Bilder entpacke. – Rantiev

+0

Welchen Browser benutzen Sie? Kannst du eine JS-Geige posten? – Trent

+0

Ich habe den obigen Link in eine funktionierende Datei geändert. Hör zu. http://jsfiddle.net/38nXe/ – Trent

2

Sie können mit der rechten Maustaste auf einen Desktop-Browser streichen. Es ist nicht sehr elegant, da es auch das Kontextmenü öffnet. Aber es funktioniert überall. Alex

0

Wie für mich verursacht wurde "excludedElements", es filtert alle Tasten, wählen Sie, TextArea-, Eingänge und Anker.

Um es funktionieren zu lassen, fügen Sie zusätzliche Parameter mit leeren Array zum Beispiel hinzu.

$ ("# test"). Swipe ({ excludedElements: [] });

Siehe touchSwipe Plugin docs hier enter link description here