2009-03-03 10 views
1

Seltsam, gibt es keine Möglichkeit, mehrere Bindungen in jquery, auf einem Element zu setzen?Jquery binden mehrere Funktionen an ein Element

$('input').click(clickfn).click(clickfn) 

Ich bin mit 1.3.2

function clickme() { alert('click me') } 

$('.click', mod).bind("brrr", clickme).bind("brrr", clickme) 
       .click(function() { $('.click', mod).trigger("brrr"); }); 

Arbeits Dies ist auch nicht. Führt einmal aus.

Antwort

4

Was Sie dort haben, sollte gut funktionieren ... es tut für mich (auch mit jQuery 1.3.2). Versuchen Sie folgendes:

$('input').click(function(ev){ alert('func 1'); }).click(function(ev){ alert('func 2'); }); 

Wenn Sie die input Elemente klicken, sollten Sie aufeinander folgende Warnungen sehen erscheinen. Vielleicht geben Sie false in der ersten Funktion zurück? Dadurch wird die Ereignisausbreitung gestoppt, sodass der zweite Handler nicht ausgelöst wird.

Als Nebenbemerkung, ich sehe, Sie tun dies zu input Elemente, so dass Sie wahrscheinlich das focus Ereignis anstelle von click verwenden möchten.

+0

Ihre Version funktioniert wirklich, ich habe die Beschreibung geändert. –

+0

Ich fand, was passiert ist, löschte dieses Element in der ersten Aktion. –