我完全与这段代码混淆。当我只是加载网页imgWidth1和imgHeight1都等于“0”但是当我调整我的窗口,代码工作和imgWidth1和imgHeight1具有相同的值作为图像尺寸。无法获得img宽度和高度jQuery
欢迎所有帮助,谢谢。
var imgWidth1 = $("#image-hover-0").outerWidth();
var imgHeight1 = $("#image-hover-0").outerHeight();
$("#hover-img-0").css("width", imgWidth1 + "px");
$("#hover-img-0").css("height", imgHeight1 + "px");
$("#hover-img-0").css("line-height", imgHeight1 + "px");
$(window).resize(function() {
var imgWidth = $("#image-hover-0").outerWidth();
var imgHeight = $("#image-hover-0").outerHeight();
$("#hover-img-0").css("width", imgWidth + "px");
$("#hover-img-0").css("height", imgHeight + "px");
$("#hover-img-0").css("line-height", imgHeight + "px");
});
如果图像未完全加载,则可能发生这种情况。你是否确定它在0时满载? – cfly24
,因为图像尚未加载。请参阅:http://stackoverflow.com/questions/623172/how-to-get-image-size-height-width-using-javascript – Hacketo
有可能这是执行得太早,图像不可用时调用属性。你可以尝试在窗口'load'事件处理程序中包装它。 – spenibus