我需要一些 jquery 的帮助才能实现淡出效果,这是我的代码:
http://jsfiddle.net/PPpnT/25/ http://jsfiddle.net/PPpnT/25/
当您将鼠标悬停在图像上时,图像需要淡出并显示下面的红色,当您将鼠标移开时,图像应该淡出回来。我认为代码可能需要一个停止函数 - 只是很难编写它。
欢迎所有建议!
在您特定的 jsFiddle 中,使用以下命令:
$('#show').hover(function() {
$(this).stop(true).fadeTo("slow", 0);
}, function() {
$(this).stop(true).fadeTo("slow", 1);
});
你可以在这里看到它的工作原理:http://jsfiddle.net/jfriend00/BJwn7/ http://jsfiddle.net/jfriend00/BJwn7/.
关键是你不能使用.fadeOut()
and .fadeIn()
因为当他们完成后,他们设置display: none
这会导致元素被隐藏并弄乱.hover()
功能。因此,只需将不透明度淡化为 0(但悬停保持有效),然后当悬停离开时,淡化回不透明度 1。
我还必须从 jsFiddle 中删除红色块的不透明度 CSS,因为您希望它在淡出图像时可见,这样您就可以将其保留在图像后面可见。
如果您只想在支持 CSS3 过渡的浏览器中实现效果(还没有 IE 版本),那么您也可以在不使用 jQuery/javascript 的情况下仅使用 CSS3 过渡来实现此目的。但是对于像这样简单的事情,当您已经有了 jQuery 时,只需使用 jQuery fades 并获得跨浏览器支持就非常容易了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)