jquery工具提示+直播

时间:2013-01-02 12:55:17

标签: jquery tooltip

我有这段代码

$(".tooltip").each(function(){
        var tooltip = this.title;
        this.title = "";
        $(this).live("mousemove",function(e){
             $("#tooltip").html(tooltip).show();
        }).live("mouseout",function(){
            $("#tooltip").hide().empty();
        });
    });

它运行良好,但是由ajax动态加载的元素是什么? 感谢

3 个答案:

答案 0 :(得分:0)

您可以使用document.ready函数,这将在加载所有元素后运行您的函数。 即。

$(document).ready(function() {
   $(".tooltip").each(function(){
        var tooltip = this.title;
        this.title = "";
        $(this).live("mousemove",function(e){
             $("#tooltip").html(tooltip).show();
        }).live("mouseout",function(){
            $("#tooltip").hide().empty();
        });
    });
 });

答案 1 :(得分:0)

是否需要在.each()中?这会有效吗?

$(document).on({
    mouseover: function() {
        $('#tooltip').html(tooltip).show();
    },
    mouseout: function() {
        $('#tooltip').hide();
    }
}, '.tooltip');

添加了jsFiddle Example

答案 2 :(得分:0)

您应该使用on来确保将事件传输到稍后添加的元素:

$(document).on('mousemove', ".tooltip", function(e){
     this.title = "";
     $("#tooltip").html(this.tooltip).show();
}).on('mouseout', ".tooltip", function(e){
     this.title = "";
     $("#tooltip").html(this.tooltip).hide();
});

这适用于所有.tooltip元素。您无需each