![]() |
1
24
是的,但不是所有浏览器都有。InternetExplorer8支持DOM原型(在一定程度上),就像火狐、Chrome、Opera和Safari一样。
许多人认为通过原型扩展DOM对象是不好的做法。Kangax有一篇关于这个问题的伟大文章: http://perfectionkills.com/whats-wrong-with-extending-the-dom/ . 然而,DOM原型允许我们在还不支持它们的环境中实现基于标准的方法,就像ECMAScript第5版方法的垫片一样。 |
![]() |
2
3
在某些浏览器中,dom元素确实公开了原型对象,原型对象也可能继承自
|
![]() |
3
0
这正是
prototype.js
是的,但现在被认为是非常糟糕的做法。
最好使用包装机/处理程序。注意,扩充任何本机对象,特别是
阅读:
Whats wrong with extending the DOM
附录: 在小项目中扩展本机对象时,可以考虑 安全的 它实际上会成为一个非常糟糕的哈比人。它只比在全局范围内乱扔函数和变量稍微差一点。不仅会发生名称冲突,还会发生实现冲突。这将变得越来越像一个图书馆,你越混搭。 将实现保存在自己的对象上是避免任何冲突、名称、实现或其他情况的唯一方法。 尽管如此,这是你的过氧化物酶体做你想做的,但我不会推荐任何被广泛接受为纯粹的坏做法。我坚持我的建议。 |
![]() |
Ezz Deghedy · 如何获取数据和读取响应 1 年前 |
![]() |
StuP · 响应式Vue组件在数据更改时不更新 2 年前 |
![]() |
burr · 让jQuery选择器识别新添加的DOM元素[关闭] 2 年前 |
![]() |
J. Hu · “表单提交已取消,因为表单未连接”[重复] 7 年前 |
![]() |
pploypiti · 选择所有其他ID不是“this”的元素。id' 7 年前 |
![]() |
xiaolingxiao · 导航到页面后运行javascript 7 年前 |