2009-04-24 3 views
1

Ich bin ein Klick-Button für meine Animation Plugin implementieren, aber ich habe ein Problem gefunden. Wenn ich die Taste zu oft die Elemente der Steuerung raus .. geklickt werden zeigen, dass ich nur den Code:jQuery Klick-Methode heißt oft

options.prev.click(function() { 
      $(this) 
       .siblings() 
       .filter('img') 
       .slice(0, 1) 
       .effect('drop', {direction: 'left'}, 1000) 
       .unbind('click'); 
     }) 

Grundsätzlich, wenn der Benutzer auf die Schaltfläche geklickt wird, ein Drop-Effekt auf das erste Element gegeben ist. Aber wenn der Benutzer zu oft geklickt hat. Alle Elemente werden in Scheiben geschnitten, dann haben alle Elemente den Tropfeneffekt, den ich nicht erwartet habe.

Ich möchte, dass dieser Effekt reibungslos funktioniert, nur das erste Element hat einen Drop-Effekt, egal wie oft der Benutzer auf die Schaltfläche geklickt hat.

Antwort

4

Wenn Sie dies nur einmal durchführen möchten, sollten Sie zuerst die Bindung aufheben, damit der Klick nicht mehr auf weitere Ereignisse reagiert.

+1

Das hat gut funktioniert. Tut mir leid, dass ich nicht genug experimentiere. LOL Ich dachte, die Lösung wäre, die Verbreitung zu stoppen. Ich habe versucht, stopPropagation(), dann hat es nicht funktioniert. Dann ist die richtige Antwort, nur die Bindung zu verschieben. Sorry für dumm zu sein! DANKE eine Million !! – rymn

1

jQuery verfügt über einen Ereignis-Hook namens one, mit dem Sie ein Ereignis nur einmal für jedes angepasste Element ausführen können.

Scheint perfekt für diesen Fall.