Javascript 如何使用JQuery&x27绑定2个事件;论方法

Javascript 如何使用JQuery&x27绑定2个事件;论方法,javascript,jquery,Javascript,Jquery,我有这段代码,它在已经创建的div上运行得非常好 $('.MyDivs').click(function(){ $('#OtherDiv').css('display','block'); }).mouseleave(function(){ $('#OtherDiv').css({ display: 'none' }); }); 但不适用于动态创建的新div。我知道对于动态创建的div,Jquery有一个.on方法,但不知道如何用它绑定两个事件。我试过这样的东西 $(d

我有这段代码,它在已经创建的div上运行得非常好

$('.MyDivs').click(function(){
      $('#OtherDiv').css('display','block');
}).mouseleave(function(){
      $('#OtherDiv').css({ display: 'none' });
});
但不适用于动态创建的新div。我知道对于动态创建的div,Jquery有一个.on方法,但不知道如何用它绑定两个事件。我试过这样的东西

$(document).on('click', '.MyDivs', function()
{
     $('#OtherDiv').css('display','block');
}).mouseleave(function(){
     $('#OtherDiv').css({ display: 'none' });
});
我也试过这个

$(document).on('click', '.MyDivs', function()
{
     $('#OtherDiv').css('display','block');
});
$(document).on('mouseleave', '.MyDivs', function()
{
     $('#OtherDiv').css({ display: 'none' });
});
但是不起作用。如何将click和mouseleave方法绑定到.on

我的问题


我只想在单击任何具有.MyDivs类的div时显示Otherdiv,并在鼠标当前离开时隐藏Otherdiv。MyDivsdiv

您可以尝试此操作。这应该行得通

$(document).on({
    mouseenter: function() {
        // Handle mouseenter...
    },
    mouseleave: function() {
        // Handle mouseleave...
    },
    click: function() {
        // Handle click...
    }
}, ".MyDivs");

对于每条链,您需要在上使用
。这应该起作用:

$(document).on('click', '.MyDivs', function() {
    $('#OtherDiv').css('display','block');
}).on('mouseleave', '.MyDivs', function() {
    $('#OtherDiv').css('display','none'});
});
或者您可以绑定这两个事件并查找
事件。键入
,然后根据结果切换div:

$(document).on('click mouseleave', '.MyDivs', function(e) {
    $('#OtherDiv').toggle( e.type == 'click' );
});

不,这就像我上面的代码和remvoes Otherdiv一样,即使鼠标还在里面也会立即删除。MyDivs divNo这就像我上面的代码和remvos Otherdiv一样,即使鼠标还在里面也会立即删除。MyDivs div你说你的问题是“开”方法。你的实际问题是什么?我只想在点击任何具有.MyDivs类的div时显示Otherdiv,并在鼠标当前离开时隐藏Otherdiv。MyDivs div检查此小提琴是否正常工作。将其更改为您的非工作代码,我会检查。最后一个怎么不工作?我不知道为什么最后一个不工作。它与所选答案相同,只是格式不同。