如果我get使用defineProperty
Object.defineProperty(Object.prototype,'parent',{
get:function(){return this.parentNode}
});
我可以这样称呼它:document.body.parent,然后就可以了。
当我value使用defineProperty
Object.defineProperty(Object.prototype,'parent',{
value:function(x){
var temp=this.parentNode;
for(var i=1;i<x;i++){temp=temp.parentNode};
return temp
}
});
我可以这样称呼它:document.getElementsByName("newtag").parent(2),意思是找到newtag的父节点的父节点。
但是当我把它们放在一起时,它说Uncaught TypeError: Invalid property. A property cannot both have accessors and be writable or have a value。
我怎样才能做到这一点,以便我可以同时调用它,.parent& .parent(n)?
没有 jQuery