jQuery Modern (1,7 y hasta) utiliza .on()
de obligar a los controladores de eventos:
// delegate binding - replaces .live() and .delegate()
$(document.body).on("keyup", ":input", function(e) {
if(e.which == 13)
$(this).trigger("enter");
});
// direct binding - analogous to .keyup()
$(":input").on("keyup", function(e) {
if(e.which == 13)
$(this).trigger("enter");
});
Mayor versiones de jQuery utilizan uno de los métodos siguientes. Puede tener un solo controlador de eventos .live()
o .delegate()
para todos los elementos. A continuación, utilizar eso para provocar que su evento personalizado, así:
$(document.body).delegate(":input", "keyup", function(e) {
if(e.which == 13)
$(this).trigger("enter");
});
No para cualquier elemento :input
que podría hacer exactamente lo que tiene:
$("selector").bind("enter", function(){
//enter was pressed!
});
You can test it out here.
¡Gracias! también, la primera vez que escucho de jsfiddle.com. muy conveniente. – Ovesh