我编写了这段代码,它遍历所有全局样式表规则并将它们存储在数组/对象中。我稍后会使用这个类似字典的对象来更改全局规则,而不是在单个元素上设置样式。
以下代码在 IE8 中中断,但在 Firefox3.7 和 Chrome4 中运行良好。
var allRules;
$(function() {
var fileRules;
allRules = [];
$.each(document.styleSheets, function() {
// get rules for any browser (IE uses rules array)
fileRules = this.cssRules || this.rules;
$.each(fileRules, function() {
allRules[this.selectorText] = this;
});
});
});
我得到Invalid procedure call or argument
错误。当我尝试调试它时,这段代码成功地迭代了两个带有规则的 CSS 样式表文件,但是当第二个迭代完成时,它失败了。
我似乎在这段代码中找不到错误。