2012-05-29 9 views
7

Ich versuche, die Mausposition zu verfolgen, während ich einen a[href] Wert auf die Lesezeichenleiste (es ist für ein Bookmarklet) klicken und ziehen. Es scheint ein paar Sekunden nach dem Ziehen zu stoppen.jQuery - Holen Sie die Mausposition beim Ziehen des Links

Der Code ist unten.

var isDragging = false; 
$('a#dragthis') 
     .mousedown(function() { 
      $(window).mousemove(function(e) { 
       isDragging = true; 
       var x = e.pageX; 
       var y = e.pageY; 
       console.log(x + "|" + y); 
      }); 
     }); 

ist hier ein jsFiddle Beispiel: http://jsfiddle.net/GZpHP/

+0

Können Sie ein funktionierendes Beispiel auf jsfiddle.net einrichten? – lanzz

+0

Hinzugefügt! Danke, dass Sie das überprüft haben. –

+0

Können Sie uns sagen, warum brauchen Sie die Cursorposition? Übrigens wird Ihr Skript genau dann nicht mehr funktionieren, wenn Sie das Ansichtsfenster des Browsers verlassen. – gearsdigital

Antwort

2

Sie müssen return false in Ihrem mousedown Handler, die Standardaktion der Auswahl von Text auf Widerstand zu verhindern.

Updated fiddle

+0

Ich möchte, dass 'href' ausgewählt wird, während ich ziehe ... das Hinzufügen von' return false' scheint das zu verhindern. –

+0

Was meinst du? Was nennst du "das' href' "? Ich sehe nichts ausgewählt, während Sie Ihre anfängliche Geige ziehen. Wenn Sie nach einem visuellen Feedback suchen, können Sie dies implementieren, indem Sie eine Klasse auf Ihrem Drag & Drop-Objekt hinzufügen, wenn Sie mit dem Ziehen und Entfernen beginnen, wenn Sie fertig sind. – lanzz

+0

Die 'return false' deaktiviert die Möglichkeit, den Link in Ihre Lesezeichenleiste zu ziehen. Das ist mein Hauptziel. –

0

wollte ich die gleichen und am Ende ondragstart und ondrop Verwendung einzuloggen und dann Mausposition auf dem Drop-Ereignis zu behandeln.

Es ist nicht perfekt, aber es macht den Job.

Verwandte Themen