jQuery多个事件来触发相同的函数(第二个事件包括特定的元素)



我必须在 2 个事件上触发一个函数。第一个事件是 keyup(我知道如何触发它)。第二个事件是单击特定按钮。

目前我知道很热触发第一个事件,正如我所说我使用以下代码:

emailPartner.on('keyup', function () {
    emailPartner.parent().removeClass('error-sign-up');
    $('.server').remove()
}

如何触发这两个事件?

通过将空格分隔的事件作为第一个参数添加到元素中,可以将多个事件侦听器添加到元素on

$('#emailPartner, #myButton').on('keyup click', function () {
    emailPartner.parent().removeClass('error-sign-up');
    $('.server').remove();
});

假设您的input ID 是电子邮件合作伙伴,button id 是要触发这些事件的 myButton。

请参阅 jQuery 文档:http://api.jquery.com/on/

你可以这样做,如果你没有在事件中指定一个函数,它会触发它:

emailPartner.on('keyup',function(){
    emailPartner.parent().removeClass('error-sign-up');
    $('.server').remove()
}).click(function(){
    $(this).keyup();
});

或者就像另一个答案中提到的,您可以使用 on() 为函数设置多个事件:

emailPartner.on('click,keyup',function(){ //...

您有两个元素,每个元素都有不同的事件,对吧?

获取事件处理程序并将其放在自己的函数中,并将其附加为两个事件的处理程序。

var emailPartner = $('...'),
    myButton = $('...');
function myEventHandler() {
  emailPartner.parent().removeClass('error-sign-up');
  $('.server').remove()
}
emailPartner.on('keyup', myEventHandler);
myButton.on('click', myEventHandler);
<</div> div class="one_answers">

您可以尝试以下代码:

emailPartner.on({
keyup:function () {...}, 
click:function() {....} 
}) ;

更新:

emailPartner.on('event1 event2 event3', function() {
...
}) ;

相关内容

  • 没有找到相关文章

最新更新