我正在为专辑制作封面。当鼠标悬停在任何图像上时,封面将开始循环遍历其中的所有图像,否则它将停止循环,并且它将重复该过程。我有以下功能(从jQuery文档修改)完成大部分工作。
但是我遇到了noHover()函数,它应该检查this.is的返回值(':hover')以查看当前图像是否正在悬停。但是,此功能仅适用于我的Firefox,并不适用于其他浏览器。然后我用$(' #images:hover')。长度。但这会检查div是否悬停,而不是正在检查的当前图像。这有什么方法可以检查"这个"对象悬停,以便当div中的白色区域悬停时,它不会循环图像。
JSFiddle演示 http://jsfiddle.net/91q54zj6/
$(function(){
$('.noncover').hide(); // hide all the non-cover pictures
function noHover() {
// check div is hovered or not
return $('#images:hover').length ? this : this.wait('mouseenter');
}
$('.cover').mouseenter(function() {
$('#images > img').repeat().each($).fadeIn(50,$).wait(100).wait(noHover).fadeOut(50,$);
});
答案 0 :(得分:0)
尝试使用find()和img:hover:
return $('#images').find('img:hover').length ? this : this.wait('mouseenter');
我更新了你的小提琴: