2016-12-27 2 views
0

ich ein globales Event-Handler für alle meine Tasten haben, die wie folgt aussieht:Aufruf jquery Event-Handler von Knockout compoenent

$(".btn").mouseup(function() { 
    $(this).blur(); 
}); 

Nur etwas einfach, um sicherzustellen, dass die Tasten konzentrieren nicht, nachdem der Benutzer sie anklickt .

Dies funktioniert jedoch nicht für KO-Bauteile.

Ich denke nicht, dass es Sinn machen würde, einen globalen Event-Handler wie den obigen zu machen, nur um einen anderen in meinem View-Modus zu erstellen, da dies redundanten Code einführt. Gibt es eine Möglichkeit, den obigen Event-Handler mit meinen Knock-out-Buttons und allen anderen zu behandeln?

Antwort

0

Für alle, die Antwort suchen:

Um so etwas wie diese Arbeit zu machen, müßte man den Umgang mit der Veranstaltung zu einem statischen Behälter delegieren, die nie wie document berühren Knockout.

$(document).on('mouseup', '.btn', function() { 
    $(this).blur(); 
}); 

In meinem Fall:

So ein globales Ereignis zu machen, die für alle funktioniert, würden Sie so etwas wie tun.