jQuery的生活hover

我正在使用下面的jQuery代码来显示一个上下文删除button,只有我们用鼠标hover的表格行。 这工作,但不是已经添加了js / ajax飞行中的行…

有没有办法让这个工作与现场活动?

$("table tr").hover( function () {}, function () {} ); 

jQuery 1.4.1现在支持live()事件的“hover”,但只支持一个事件处理函数:

 $("table tr").live("hover", function () { }); 

或者,您可以提供两个函数,一个用于mouseenter,一个用于mouseleave:

 $("table tr").live({ mouseenter: function () { }, mouseleave: function () { } }); 
 $('.hoverme').live('mouseover mouseout', function(event) { if (event.type == 'mouseover') { // do something on mouseover } else { // do something on mouseout } }); 

http://api.jquery.com/live/

.live()从jQuery 1.7开始已经被弃用了

使用.on()来代替并指定后代select器

http://api.jquery.com/on/

 $("table").on({ mouseenter: function(){ $(this).addClass("inside"); }, mouseleave: function(){ $(this).removeClass("inside"); } }, "tr"); // descendant selector 

从jQuery 1.4.1开始,hover事件与live() 。 它基本上只绑定到mouseenter和mouseleave事件,你可以在1.4.1之前的版本中使用它们:

 $("table tr") .mouseenter(function() { // Hover starts }) .mouseleave(function() { // Hover ends }); 

这需要两个绑定,但同样适用。

此代码工作:

  $(".ui-button-text").live( 'hover', function (ev) { if (ev.type == 'mouseover') { $(this).addClass("ui-state-hover"); } if (ev.type == 'mouseout') { $(this).removeClass("ui-state-hover"); } }); 

警告:hover的实时版本有显着的性能损失。 在IE8的大页面上尤其显着。

我正在做一个项目,我们用AJAX加载多级菜单(我们有我们的理由:)。 无论如何,我用在Chrome上工作的hover的活方法(IE9没有,但不是很好)。 但是,在IE8中,它不但减慢了菜单的速度(你必须在几秒钟之前hover),但是页面上的所有内容都很慢,包括滚动,甚至检查简单的checkbox。

装载后直接绑定事件导致了足够的性能。