【发布时间】:2012-02-08 13:15:14
【问题描述】:
我正在编写一个在页面上执行某些功能的小书签。作为此功能的一部分,我需要使用getElementsByClassName。但是,在测试过程中,我发现有几个网站已经将getElementsByClassName 重新定义为自定义方法。据推测,这样做是为了在所有浏览器中支持getElementsByClassName。
自定义getElementsByClassName 的实现有点草率,在我的几个用例中都失败了。有什么办法可以得到getElementsByClassName的原始定义?
在 chrome javascript 控制台中:getElementsByClassName 指向本机函数。既然getElementsByClassName已经被重新定义了,有没有办法访问这个原生函数?
【问题讨论】:
-
您可以预先缓存它,或者仅在本地支持不存在时更改这些脚本以添加支持(大多数人应该这样做),但是一旦它被覆盖,您就无法取回它。
-
@davin 不幸的是,我不拥有/控制页面或其脚本。
-
就像我说的,我正在编写一个书签,而不是嵌入在页面中的脚本。所以我无法修改重新定义 getElementsByClassName 的函数,这就是为什么我正在寻找其他访问它的方式。
标签: javascript