Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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
Javascript jquery检查if";这";对象是否悬停,未使用.is(';:hover';)函数_Javascript_Jquery_Hover - Fatal编程技术网

Javascript jquery检查if";这";对象是否悬停,未使用.is(';:hover';)函数

Javascript jquery检查if";这";对象是否悬停,未使用.is(';:hover';)函数,javascript,jquery,hover,Javascript,Jquery,Hover,我正在制作一张专辑的封面。当鼠标悬停在任何图像上时,封面将开始在其中的所有图像中循环,否则它将停止循环,并重复该过程。我有以下函数(根据jQuery文档修改)来完成大部分工作 但是我被noHover()函数卡住了,它应该检查this.is(“:hover”)的返回值以查看当前图像是否被悬停。但是,此功能仅在我的firefox中有效,在其他浏览器上不起作用。然后我使用了$('#images:hover').length。但这会检查div是否悬停,而不是检查的当前图像。这是我可以检查“this”对象

我正在制作一张专辑的封面。当鼠标悬停在任何图像上时,封面将开始在其中的所有图像中循环,否则它将停止循环,并重复该过程。我有以下函数(根据jQuery文档修改)来完成大部分工作

但是我被noHover()函数卡住了,它应该检查this.is(“:hover”)的返回值以查看当前图像是否被悬停。但是,此功能仅在我的firefox中有效,在其他浏览器上不起作用。然后我使用了$('#images:hover').length。但这会检查div是否悬停,而不是检查的当前图像。这是我可以检查“this”对象是否悬停的任何方式,以便当div中的白色区域悬停时,它不会循环图像

jsiddle演示

尝试使用find()和img:hover:

return $('#images').find('img:hover').length ? this : this.wait('mouseenter');
我更新了你的小提琴:


等待(无悬停)?要在悬停时返回此内容,请不要等待,如果未悬停,请等待,直到鼠标再次结束。您是否可以演示一些示例,以了解封面相册幻灯片的工作原理?嗨,andrex,请查看Ryan的更新解决方案,这是我对相册封面的期望。所以基本上就像快速查看里面的照片一样。我在jQuery文档中找不到
wait
方法。它是第三方插件吗?是的,它使用了jQuery的计时API,这里是文档页面:谢谢Ryan,解决了这个问题。顺便说一句,我很好奇,看到很多人说.is(“:hover”)只在jQuery1.9.1及以上版本中中断。但是为什么对我来说这不是同一个问题呢?我用的是1.8.3,它只对chrome有效,这正常吗?谢谢我在IE、Chrome和Safari中试用了最新的小提琴;这在他们所有人身上都起了作用。现在,所有主流浏览器都支持:hover CSS选择器,因此您不应该在那里遇到问题。您的原始代码正在检查鼠标是否悬停在整个div上,而不是div内的单个图像上。find()函数将搜索当前对象的直接子对象并应用可选筛选器。在这里,要搜索悬停的图像,可以使用过滤器“img:hover”。希望有帮助。谢谢你的回复。我发现is(“:hover”)函数也适用于jsfiddle中的所有浏览器。但如果我从localhost双击我的html文件,它就会停止工作,在这种情况下,它只在Firefox中工作。你有没有可能知道其中的区别?
return $('#images').find('img:hover').length ? this : this.wait('mouseenter');