【发布时间】:2008-12-16 02:41:39
【问题描述】:
我想覆盖所有 html 元素的 offsetParent 成员的默认行为。如果可能的话,我想做这样的事情:
// For <div id="foo"></div>
var oFooElem = document.getElementById("foo");
oFooElem._offsetParent = oFooElem.offsetParent;
oFooElem.prototype.offsetParent = function() {
window.status = 'offsetParent called.';
return this._offsetParent;
};
这甚至可能吗?如果是这样,请发布更正后的代码示例。谢谢!
更新:
@some 谢谢你的帮助。听起来这是不可能的。如果您有兴趣,我已经在新的question 中扩展了引发此问题的问题。
【问题讨论】:
-
当我在 firefox 中尝试时,出现异常“对 WrappedNative 原型对象的非法操作”。
-
您不能在 offsetParent 属性 AFAIK 上执行此操作。你希望完成什么?例如您是否试图在层次结构中获得真正的上/左坐标?
-
我希望彻底解决这个问题。 weblogs.asp.net/rajbk/archive/2006/11/29/…
-
@CodeChef:我更新了我的答案,并在其他网站上发布了回复。