复制代码代码如下:
<! Doctype html public "-// w3c // dtd xhtml 1.0 transitional // pt" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-bransitional.dtd">
<html xmlns = "http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv = "content-type" content = "text /html; charset = utf-8" />
<title> Chrome 下 img 加载对 Height () 的影响 </ititle>
<style type = "text/css">
.floatleft {
flutuar: esquerda;
}
</style>
<script type = "text/javascript" src = "js/jQuery-1.7.1.js"> </script>
<script type = "text/javascript">
$ (function () {
var iMg_h = $ ('. showimg'). Height ();
var iMg_w = $ ('. showimg'). width ();
var text_h = $ ('. ShowText'). Hight ();
$ ('. ShowResult'). html ('showimg:' + img_w + '&' + img_h + '<br /> showtext:' + text_h);
alert ('showimg:' + img_w + '&' + img_h + '<br /> showtext:' + text_h);
});
</script>
</head>
<!-
作者: 北京-南宫
日期: 2012-07-25
->
<Body>
<div>
<div>
<img src = "imagens /flash_pic.gif" />
</div>
<div>
这是文字
</div>
<div>
这里显示结果。
</div>
</div>
</body>
</html>
将此代码在 Chrome 运行 , 当 alerta 窗口弹出时 , 将会发现页面的 img 并没有加载。
运行结果如下
这是文字
Showimg: 112 e 0
ShowText: 18
1 、此处 img 的默认宽度为 112 , 但是我链接的 img 的宽度为 1000,
2 、此处 img 的高度为 0,
现做如下改动
复制代码代码如下:
<img src = "imagens /flash_pic.gif" />
运行结果为
这是文字
Showimg: 1000 e 0
ShowText: 18
img 的高度仍旧为 0
当为其设置高度之后 , 就可以正常获取到。
结论 : 在 Chrome 下 , img 不设置宽高 , 通过 jQuery 的 width () 和 altura () 获取到的 img 的宽高将为 112px * 0
求助: 希望哪位大侠有好办法 , 能在不设置宽高情况下获取到正确的值。