jQuery: замена bind () на on () для многих событий - PullRequest
1 голос
/ 02 декабря 2011

В настоящее время у меня есть

$("#string").bind("keyup keypress paste mouseup", function () {

});

, и я хотел бы заменить его на .on(), но, похоже, on() не принимает много событий одновременно?

Я попробовал это:

$("#string").on("keyup", "keypress", "paste", "mouseup", function () {

});

и это:

$("#string").on("keyup keypress paste mouseup", function () {

});

1 Ответ

2 голосов
/ 02 декабря 2011

В документации говорится, что вы, безусловно, можете использовать .on () с разделенным пробелами списком событий для привязки нескольких событий: link .Это означает, что ваш код должен работать так:

$("#string").on("keyup keypress paste mouseup", function () { 
    alert("hello!");
}); 

Вот быстрый JSfiddle ... Мышь определенно работает - хотя не может подтвердить другие типы событий (РЕДАКТИРОВАТЬ Только что попробовал все ваши события, и они определенно работают - см. JsFiddle) ...

...