2012-04-04 72 views
0

我有代码,当我做ajax调用时,它刷新一个列,但然后鼠标悬停不再起作用。我曾经把它内联在div中,但是由于其他原因想把它移到jQuery中。这是我的代码。jQuery Mouseover/Mouseout将不能用于生活

$(".statusbox").live({mouseover:function(){ 
    wal_id = parseInt(this.id.replace("statuscontainer_", "")); 
    $('#rm_'+wal_id).show(); 
},mouseout:function(){ 
    wal_id = parseInt(this.id.replace("statuscontainer_", "")); 
    $('#rm_'+wal_id).hide();} 
}); 

任何想法?

回答

1

尝试

$(".statusbox").live('mouseover', function() { 
    wal_id = parseInt(this.id.replace("statuscontainer_", "")); 
    $('#rm_'+wal_id).show(); 
}).live('mouseout', function() { 
    wal_id = parseInt(this.id.replace("statuscontainer_", "")); 
    $('#rm_'+wal_id).hide();} 
}); 
+0

谢谢,但结果相同。它的工作原理,直到我刷新,它重新填充列,然后它没有:(我没有得到它。所有其他函数功能工作与现场,只是不是鼠标悬停部分。 – 2012-04-04 15:29:18

+0

你试过只是把一个alert或console.log函数在你的鼠标悬停功能中?是否有可能$('#rm _'+ wal_id)找不到你想要的元素? – 2012-04-04 16:13:36

+0

谢谢你帮我调试。由于某些原因,div的内容不在ajax之后,所以它可能一直工作。感谢以下帮助我解决我的“用户错误”时刻。 – 2012-04-04 18:14:10

0

试试这个:

$(".statusbox").live("hover", function(){ 
    ... 
}, function(){ 
    ... 
}); 
+0

这似乎并没有在所有的工作。悬停是否支持多个事件处理函数? – 2012-04-04 15:35:41

+0

http://api.jquery.com/hover/ – 2012-04-04 16:17:43

2

这是正确的语法直播:

$(".statusbox").live('mouseover', function() {}); 
+0

我在演示http://api.jquery.com/live/上直接从jquery.com获得了我的语法,用于鼠标悬停 – 2012-04-04 15:21:47