在Firefox中,可以使用以下内容…
HTMLDocument.prototype.__defineGetter__("cookie",function (){return "foo=bar";});
HTMLDocument.prototype.__defineSetter__("cookie",function (){});
这不会导致WebKit中的任何错误,并且WebKit肯定支持__defineGetter__和__defineSetter__,但它不起作用.猜猜WebKit正在某种程度上保护这个属性.
那么,如何在WebKit中实现相同效果的任何想法?
最佳答案
您是否尝试在文档对象本身上定义getter / setter对,而不是在原型上?
原文链接:https://www.f2er.com/js/429322.htmldocument.__defineGetter__("cookie",function() {} );
document.__defineSetter__("cookie",function() {} );
我知道这应该没关系,但我不会低估浏览器的怪癖.即使使用WebKit.
更新
我在Chrome 2中做过一些测试,看起来它只允许定义一个setter.无论如何,我不确定这个观察对WebKit有多有效,因为Google Chrome使用的是与WebKit不同的JavaScript解释器.