0

我试图将悬停与.on()一起使用,但我发现的所有代码和答案都不起作用。

我需要使用 .on 因为它的 Ajax 内容。

我试过几个:

$(document).on('mouseenter', '[rel=popup]', function() {
    mouseMove = true;
    width = 415;
    $('#tool-tip').show();

    var type = $(this).attr('data-type'),
        id = $(this).attr('data-skillid');

    console.log("TT-open");
    ttAjax(type, id);
}).on('mouseleave', '[rel=popup]', function() {
    mouseMove = false;
    console.log("TT-close");
    $('#tool-tip').hide();
    $('#tt-cont').html("");
    $('#tt-ajax').show();
});

$('[rel=popup]').on('hover',function(e) { 
    if(e.type == "mouseenter") {
        mouseMove = true;
        width = 415;
        $('#tool-tip').show();

        var type = $(this).attr('data-type'),
            id = $(this).attr('data-skillid');

        console.log("TT-open");
        ttAjax(type, id);
    }
    else if (e.type == "mouseleave") {
        mouseMove = false;
        console.log("TT-close");
        $('#tool-tip').hide();
        $('#tt-cont').html("");
        $('#tt-ajax').show();
    }
});

$('[rel=popup]').on("hover", function(e) {

    if (e.type === "mouseenter") { console.log("enter"); }
    else if (e.type === "mouseleave") { console.log("leave"); }

});

$(document).on({
    mouseenter: function () {
        console.log("on");
    },
    mouseleave: function () {
        console.log("off");
    }
}, "[rel=popup]"); //pass the element as an argument to .on

原来的非.on:

$('[rel=popup]').hover(function(){
    mouseMove = true;
    width = 415;
    $('#tool-tip').show();

    var type = $(this).attr('data-type'),
        id = $(this).attr('data-skillid');

    console.log("TT-open");
    ttAjax(type, id);

},function () {
    mouseMove = false;
    console.log("TT-close");
    $('#tool-tip').hide();
    $('#tt-cont').html("");
    $('#tt-ajax').show();
})

所有 .on 返回“TypeError: $(...).on 不是函数”。我使用的是 1.9.1 版。

4

2 回答 2

2

您正在寻找的事件可能是

$("#id").mouseover(function(){});

或者

$("#id").mouseout(function(){});
于 2013-09-26T18:31:35.430 回答
0

有一个答案:

$(document).on({
    mouseenter: function () {
        console.log("on");
    },
    mouseleave: function () {
        console.log("off");
    }
},"[rel=popup]");

这行得通,由于某种原因,我在导致问题的 1.9.1 命名文件中有 JQ 1.4。

于 2013-09-26T18:40:20.103 回答