javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 >

Firefox 无法获取cssRules 的解决办法

作者:

Firefox 无法获取cssRules 的解决办法
Firefox实在太BT了, 总给我们加一些无聊的安全权限设置. 这几天在做Qzone的FF兼容发现. 设置了domain 后, FF下无法获取 styleSheets 的 cssRules 了.
虽然无法获取 cssRules ,但是我惊讶地发现,居然可以对 styleSheets 里的样式进行 insert和delete .  这是那门子权限呀,无聊了不是. 

得给我 insert和delete 就够了. 利用这两个方法也可以对样式进行 update 操作. 为了让firefox兼容IE. 我修改了  CSSStyleSheet 的原型方法
复制代码 代码如下:

CSSStyleSheet.prototype.addRule = function(selectorText,cssText,index){
    return this.insertRule(selectorText+cssText,index);
}
CSSStyleSheet.prototype.removeRule = CSSStyleSheet.prototype.deleteRule

这样 firefox 也可以使用IE的 addRule 和 removeRule 了.
阅读全文