如果我覆盖window.scrollTo方法会发生什么?

时间:2013-10-25 14:26:24

标签: javascript scrollto

我是javascript编程的新手,所以请耐心等待我的基本问题:) 如果其中一个开源javascript代码意外地修改了本机window.scrollTo()方法,我如何确保在为HTML元素调用scrollTo时,它总是有效,而不是引发JS错误?

1 个答案:

答案 0 :(得分:2)

您只需删除修改即可恢复默认版本scrollTo

delete window.scrollTo;

这将删除修改后的window.scrollTo,并将其替换为Window对象原型中函数的默认版本。

但是,如果您需要window.scrollTo的修改版本,则可以复制该版本并使用该副本。

在加载库之前执行以下代码:

window.scrollToProper = window.scrollTo;

从那时起,即使scrollToProper()被修改,您也可以致电window.scrollTo使用默认功能。

或者,您可以直接从Window原型调用默认的scrollTo函数。 (谢谢rishabh。)语法如下:

Window.prototype.scrollTo.call(window, x, y);

请注意Window的大小写,因为您指的是Window对象而不是当前实例。