无法获取图像的css width属性

时间:2011-09-15 21:10:23

标签: jquery css

我正在尝试接收一组图像的CSS宽度。例如,我有一个css规则,如

#myDiv img{
   width: 100px;
}

和$(document).ready()我有

console.log($("#myDiv img").css("width")); //prints 'undefined'
console.log($("#myDiv img").width());      //prints 'null'

如何获得此css值?谢谢!

编辑: 我试图获取css值后动态加载图像,我不知道jquery需要一个元素存在。在加载图像之前是否无法获取该值?

2 个答案:

答案 0 :(得分:1)

如果.css('width')返回undefined,并且.width()返回null,则表示页面上没有与选择器“#myDiv img”匹配的元素。为了让jQuery访问该属性,其中一个图像必须实际存在于页面中(即,你不能问jQuery“像这样的元素的宽度是多少?”)。

我猜你正在动态地向该div添加图像,并且当你的脚本运行时都不存在。不管怎样,还是只有一些涉及#myDiv的拼写错误。

答案 1 :(得分:0)

确保html类似于

<div id="myDiv"> 
  <img src="/nyan.gif" /> 
</div> 

因为它对我有用

http://sandbox.phpcode.eu/g/556f9/1