我正在编写一个小的javascript脚本来编辑CSS代码,我发现有许多...特殊性,如果我可以这么说,与其他浏览器相比,使用Internet Explorer。例如,document.stylesheet对象的rules对象对于大多数浏览器称为cssRule,对于IE则称为规则。
我想在这里做的是分配一个包含窗口大小的对象属性的引用(window.innerWidth& document.body.clientWidth),以避免每次检查IE对象名称是否应该使用或“正常”。
这是好主意吗?
在发布问题之前,我想了解更多关于它的问题并提出了解决方案..
function CommonObject(obj, propertyName){
this.get = function() { return obj[propertyName]; }
}
还有其他/更好的方法吗?
由于
(是的,我知道这样做真的没有必要,特别是因为我正在编写一个小脚本而且性能并不是真正令人担忧,但我主要是好奇。)
答案 0 :(得分:0)
使用映射表:
var css = {"rules": {"ie":"rule","w3":"cssRule"} }
var browser = !!window.XPathEvaluator ? "w3" : "ie"
var foo = document.styleSheets["0"][css.rules[browser] ]