我有一个顺序 dom 元素节点数组,它们可能有也可能没有内联样式。我最终需要一个对象或数组,其中只有所有节点共有的键和值。需要在 IE8+、chrome 和 FF 中工作。
如果不包含一堆其他东西,我什至无法将一个节点样式放入一个数组中。
我尝试使用 node[x].style 但它似乎返回了很多无关的东西和其他问题。
//g is node array
s=[];
for(k in g)
{
if(g.hasOwnProperty(k) && g[k]) s[k]=g[k];
}
console.log(s);
给了我["font-weight", cssText: "font-weight: bold;", fontWeight: "bold"]
很接近但我只想要数组中的 fontWeight: "bold" 。无论如何,这只适用于 chrome。
我目前唯一可行的想法是使用 cssText 并在分号上拆分并在冒号上再次拆分,但这似乎是一种丑陋而缓慢的方法,尤其是当我需要与一堆节点进行比较时对他们的风格做同样的事情。
所以,我希望有人能想出一个简单优雅的解决方案来解决第一段中提出的问题。