我没有专业的javascript编码器。 我用了5个小时现在尝试了很多不同的东西。我注意到一些我无法弄清楚的事情 我试图让这个工作
width = $('#immagineCont').attr('clientWidth');
但它返回undefined 我试着做了
width = $('#immagineCont').attr('id');
女巫回归#immagineCont我猜是正确的。
当我使用
时 $('#immagineCont')
我在萤火虫中得到这个1) http://bildr.no/view/1325119 2) http://bildr.no/view/1325120
所以我想做的就是得到该死的clientWidth女巫似乎是不可能的。我甚至试过孩子(“0”)和孩子(“#0”) 我很快就会吹脑筋^^
答案 0 :(得分:5)
attr
仅在存在具有此名称的属性时才有效。
您可以简单地使用
width = $('#immagineCont').get(0).clientWidth;
但你可能更需要
width = $('#immagineCont').width();
如果您想在浏览器中执行相同的操作(但不包括填充和边框),则更可靠。
您可能也会对outerWidth感兴趣。
关于发生了什么以及对get(0)
的需求的说明:jQuery集合(如$('#immagineCont')
)包装了一个或多个标准DOM对象,您可以使用get(i)
或{{1 }}。如果要访问DOM对象的本机属性,当jQuery不提供代理函数时,您需要首先获取此本机对象。
答案 1 :(得分:1)
为此目的使用jQuery width()
:
var width = $('#immagineCont').width();
此外,没有为名为clientWidth的元素设置属性。这是一个javascript属性,因此可以通过取消引用jQuery对象来检索它:
var width = $('#immagineCont')[0].clientWidth;