Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery悬停无限循环_Jquery_Hover_Mouseover_Jquery Hover - Fatal编程技术网

jQuery悬停无限循环

jQuery悬停无限循环,jquery,hover,mouseover,jquery-hover,Jquery,Hover,Mouseover,Jquery Hover,我正在尝试使用.hover使HTML元素看起来像是发光的。我的代码如下所示: var glow = $('<div class="glow">...</div>'); $(this).hover(function() { glow.fadeIn(); }, function() { glow.fadeOut(); } var glow=$('…'); $(this).hover(函数(){ glow.fadeIn(); },函数(){ 辉光衰减(); }

我正在尝试使用.hover使HTML元素看起来像是发光的。我的代码如下所示:

var glow = $('<div class="glow">...</div>');

$(this).hover(function() {
   glow.fadeIn();
}, function() {
   glow.fadeOut();
}
var glow=$('…');
$(this).hover(函数(){
glow.fadeIn();
},函数(){
辉光衰减();
}
我得到的效果是,淡入淡出只是在无限循环的鼠标上一遍又一遍地重复。当我查看控制台时,hoverIn和hoverOut处理程序函数只是不断地被调用

你知道会发生什么吗


谢谢!

我想您应该使用以下代码:

var glow = $('<div class="glow">...</div>');

glow.hover(function() {
   $(this).fadeIn();
}, function() {
   $(this).fadeOut();
}
var glow=$('…');
glow.hover(函数(){
$(this.fadeIn();
},函数(){
$(this.fadeOut();
}

var glow=$('…');
glow.hover(函数(){
glow.fadeIn();
},函数(){
辉光衰减();
}
我相信现在您的$(this)是不明确的,并且可能没有将hover()处理程序放在正确的对象上

也有可能您在这里遗漏了一些重要的内容(例如,where is
glow
放入DOM中)

如果情况变得更糟,您可以完全跳过
悬停
,只需使用
mouseover
mouseout
,或者如果您想真正了解整个过程,您可以对mouseover和mouseout事件使用
bind

实际上,由于您在单个鼠标悬停事件上看到重复操作,这可能表明您以某种方式将单个
悬停
处理程序的多个实例绑定到
发光
对象。如果最终是这样,您可以使用
解除绑定
在绑定新处理程序之前删除当前处理程序,但避免如果您能找到一种方法,那么多重绑定是一种更好的策略


我希望这会有帮助!

如果您能提供一个请提供更多代码,那就太好了。您的
$(此)
让我觉得您可能正在分配
.hover()
是另一个事件的结果,因此它被重复地分配。我读到的方式似乎是你在悬停时创建了
发光
div,而不是在现有div中淡入/淡出(无可否认,时间晚了,我有点累了…)JSIDdle:这不起作用。问题可能是.hover的上下文。基本上,我在dom中运行,寻找包含某个类(“glow”)的元素。如果元素具有该类,我将附加一个新的dom元素。下面是一个JSIDdle,它显示了我正在做的更多工作:
var glow = $('<div class="glow">...</div>');

glow.hover(function() {
   glow.fadeIn();
}, function() {
   glow.fadeOut();
}