该脚本在除 Google Chrome 之外的所有浏览器中都能完美运行。
$(document).ready(function(){
$(".banners-anim img").each(function(){
var hover_width = $(this).width();
var hover_height = $(this).height();
var unhover_width = (hover_width - 30);
$(this).width(unhover_width);
var unhover_height = $(this).height();
$(this).closest("li").height(unhover_height);
var offset = "-" + ((hover_height - unhover_height)/2) + "px";
$(this).closest("span").css({'position':'absolute', 'left':'0', 'top':'25px', 'width':'100%'});
$(this).hover(function(){
$(this).animate({width: hover_width, marginTop: offset}, "fast")
},function(){
$(this).animate({width: unhover_width, marginTop: 0}, "fast")
});
});
});
Chrome 无法识别更改后的图像属性。
When width
img 的变化,height
也发生变化。甚至不在 Chrome 中..
$(this).width(unhover_width);
var unhover_height = $(this).height();
unhover_height
gives 0
.
该脚本的完整代码(包括 html)-http://jsfiddle.net/BsqTe/ http://jsfiddle.net/BsqTe/
请帮助解决这个问题。
Thanks.
如果您正在使用 jQuery 中的图像进行操作ready
函数,你需要记住图像可能尚未加载。 jQuery 的目的ready
函数是在 DOM 准备好后立即触发,即使图像仍在加载。如果您想在所有图像加载完成后执行某些操作,请使用window
's load
事件代替:
$(window).load(yourFunctionHere);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)