在javascript中分配属性引用

在javascript中分配属性引用,javascript,algorithm,cross-browser,decoupling,cssom,Javascript,Algorithm,Cross Browser,Decoupling,Cssom,我正在编写一个小的javascript脚本来编辑CSS代码,我发现有很多。。。如果我可以这样说的话,internet explorer与其他浏览器相比有其特殊性。例如,document.stylesheet对象的rules对象在大多数浏览器中称为cssRule,在IE中称为rule 我想在这里做的是指定一个包含窗口大小的对象(window.innerWidth&document.body.clientWidth)属性的引用,以避免每次检查IE对象名称是应该使用还是“正常”名称 这是个好/坏主意吗

我正在编写一个小的javascript脚本来编辑CSS代码,我发现有很多。。。如果我可以这样说的话,internet explorer与其他浏览器相比有其特殊性。例如,document.stylesheet对象的rules对象在大多数浏览器中称为cssRule,在IE中称为rule

我想在这里做的是指定一个包含窗口大小的对象(window.innerWidth&document.body.clientWidth)属性的引用,以避免每次检查IE对象名称是应该使用还是“正常”名称

这是个好/坏主意吗

在发布这个问题之前,我想了很多,并想出了一个解决方案

function CommonObject(obj, propertyName){
    this.get = function() { return obj[propertyName]; }
}
有没有其他/更好的方法

谢谢

(是的,我知道这样做真的没有必要,特别是因为我正在制作一个小脚本,性能不是一个真正的问题,但我很好奇。)

使用映射表:

var css = {"rules": {"ie":"rule","w3":"cssRule"} }

var browser = !!window.XPathEvaluator ? "w3" : "ie"

var foo = document.styleSheets["0"][css.rules[browser] ]

我想大多数人会建议[在这里插入最喜欢的跨平台JavaScript框架的名称]:-)你可能想查看“dailyjs.com”上的“Let's make a framework”系列-Alex也写了一些关于CSS操作的部分:,