作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在每次调用 appendChild
时执行一些代码。让我们假设我无法知道它会在何时何地被调用。我想我可以使用原型(prototype)来做到这一点,但它们似乎不起作用:
var actAppendChild = Element.prototype.appendChild;
Element.prototype.appendChild = function(node){
actAppendChild.call(this,node);
//execute custom code here...
console.log("foo");
}
document.body.appendChild(someNode);
但就此而言,“foo”不会打印到控制台,也不会打印到新原型(prototype)函数中的任何代码。我做错了什么?
最佳答案
我可以确认即使在 IE8+、Safari、Chrome 和 Opera 上它也能正常工作。只是一个建议:将代码包装在闭包中以避免污染全局命名空间始终是最佳实践,如下所示:
(function(){
var actAppendChild = Element.prototype.appendChild;
....
}());
关于javascript - 在 JavaScript 中更改宿主对象的原型(prototype)函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11268360/
我正在开发框架,我已将此框架项目添加到宿主项目中。现在我想将 cocoapods pod(框架)添加到父(主机)项目中。并将同一个 pod 共享到子(框架)项目中。或者有什么我可以添加到 Podfil
我正在尝试使用 vagrant , Clojure和 emacs一起。具体来说,我无法连接cider到我的 vagrant机器。 它在本地工作,当我运行时 cider-jack-in在我的项目里面。
我是一名优秀的程序员,十分优秀!