我试图获取DOM中元素的值。 我想在style属性中获取“Active”值:
<span ng-class="{'megatable-filter-box-txt-selected' : filter.value.length > 0}" class="ng-binding megatable-filter-box-txt-selected" style="">Active</span>
在控制台上我试图通过:
element = $("[sf-name='stateFilter']")
document.defaultView.getComputedStyle(element)
我收到了错误:
Uncaught TypeError:无法在'Window'上执行'getComputedStyle':参数1不是'Element'类型。在&lt; anonymous&gt;:1:22
我做错了什么?获得价值的方法是什么?
答案 0 :(得分:3)
元素中的对象不是元素对象。如果该站点包含jQuery,那么它就是一个jQuery对象。
尝试使用:
document.defaultView.getComputedStyle(element[0])
您可以通过将其视为数组来访问jQuery对象中的DOM元素对象,使用索引将DOM元素对象拉出来。
如果该代码有效,则意味着它是一个jQuery对象,其中至少有1个DOM元素与选择器匹配。
答案 1 :(得分:0)
参数1不是'Element'类型。
此方法需要引用DOM元素,但是传入了jQuery对象。
您需要首先通过jQuery获取对您选择的DOM元素的引用,例如可以通过使用索引来完成:
document.defaultView.getComputedStyle(element[0])