在JQuery中查询内联样式属性

Jul*_*ung 4 html css jquery

我正在为一些特别格式化的HTML编写JQuery HTML解析器,我需要查询内联样式的值.

在代码中,我逐步执行特定的输入字段并将此特定样式保存到数组中......

首先是我用来逐步浏览这些输入字段并获取宽度的代码.这可以工作,但不会返回正确的宽度值(我想要EM值).

$('.inputBox',this).each(function(index)
{
   widthArray[widthArray.length] = $(this).attr('width');
}
Run Code Online (Sandbox Code Playgroud)

以下是其中一个输入框的简化示例

<input style="width:1.9500000000000002em;" maxlength="3" tabindex="1" class="inputBox" type="text">
Run Code Online (Sandbox Code Playgroud)

任何帮助赞赏.谢谢!

kap*_*apa 8

当然最简单的方法是从style属性中获取它this.

$('.inputBox', this).each(function(index) {
   widthArray[widthArray.length] = this.style.width;
});
Run Code Online (Sandbox Code Playgroud)

现场演示

从这里开始,这只是醉酒的推测:从理论上讲,你可以获得style属性并根据它分割在那里找到的值;.然后,您可以进一步拆分它们:以获取键值对.

就像是:

$('.inputBox', this).each(function(index) {
   var stylestemp = $(this).attr('style').split(';');
   var styles = {};
   var c = '';
   for (var x = 0, l = stylestemp.length; x < l; x++) {
     c = stylestemp[x].split(':');
     styles[$.trim(c[0])] = $.trim(c[1]);
   }
   widthArray[widthArray.length] = styles.width;
});
Run Code Online (Sandbox Code Playgroud)

醉酒投机现场演示