如何在创建对象时调用任何javascript函数。
我不确定但是,当我创建任何对象时,有没有办法调用javascript函数。?
var myScroll = new iScroll("wrapper");
function objectCreated() {
alert("yes created")
}
这里我想在创建iScroll对象时调用函数 objectCreated 函数。我知道我可以从iScroll构造函数调用函数 objectCreated ,但我不想在iscroll中进行更改。
答案 0 :(得分:1)
您无法拦截任何对象创建,但在这种情况下您可以修补iScroll
:
// overwrite with a patched function
iScroll = (function(old) {
return function() {
// call your interceptor function
objectCreated();
// pass everything through to the original iScroll function
return old.apply(this, arguments);
};
})(iScroll);
答案 1 :(得分:0)
我会添加一个新答案。我修补了iScroll(我稍后会对cubiq做一个拉取请求)。可在此处看到演示:http://www.hakoniemi.net/labs/iscroll/,可在此处找到已修补的iScroll:https://github.com/zvona/iscroll/blob/master/src/iscroll.js
简而言之,代码如下所示:
myIScroll = new iScroll("myScroll", {
"onCreate" : function() { alert('created'); },
"onDestroy" : function() { alert('destroyed'); }
});