在IE中使用jQuery获取按钮的宽度属性值

时间:2010-02-15 09:49:27

标签: javascript jquery internet-explorer

在我的页面上显示此按钮:

<input type="button" id="Button1" value="OK" class="buttonClass" width="150px"/>

并使用jQuery 1.3.2,如果我运行此命令:

alert($('.buttonClass').attr('width'));

我在所有浏览器中获得'150px'但在IE(任何版本)中我得到'0'。

如果我在按钮的标签中添加一个custon属性,就像这样:

<input type="button" id="Button1" value="OK" class="buttonClass" myattribute="150px"/>
然后命令:

alert($('.buttonClass').attr('myattribute')); 

适用于包括IE在内的所有浏览器,并返回'150px'。

有谁知道这里发生了什么以及是否有修复?

2 个答案:

答案 0 :(得分:1)

更新:简化并删除了有关使用DOM属性而不是attr()的内容。

首先,输入的宽度和高度属性应该是整数而不是长度值;假设像素。

其次,这就是造成问题的原因(正如您可以通过将输入类型更改为“图像”来证明),宽度和高度属性仅适用,并且仅影响在浏览器中呈现{{1}类型的输入}。对于按钮,您需要使用CSS来更改尺寸。

答案 1 :(得分:0)

你能保证.buttonClass是唯一的吗?

如果可以,那么你最好通过身份证选择