1

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

4

1 回答 1

3

scrollTo您可以通过简单地删除修改来恢复默认版本。

delete window.scrollTo;

这将删除修改window.scrollTo并用来自 Window 对象原型的函数的默认版本替换它。

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

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

window.scrollToProper = window.scrollTo;

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

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

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

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

于 2013-10-25T14:50:42.977 回答