我刚刚解决了这个问题,以获得所有可用的css属性数组,如:
['top',… , 'right', … ]
我知道可以这样做:
var a = document.createElement('a'),
s = a.style, r = [], p;
for (p in a.style) {
r.push(p) //only if own property…
}
但我正在寻找一种优雅的方式,就像将arguments
或Nodelists
转换为数组一样:
Array.prototype.slice.call(arguments);
或从数组中获取最大数量:
Math.max.apply(null, [1,5,3,4]);
我尝试了一些东西,下面的一个在Firefox上工作:
Object.keys(document.body.style.__proto__);
但不是 chrome并且我还没有使用任何其他浏览器测试过...