每当创建对象时调用javascript函数

时间:2012-08-20 09:18:50

标签: javascript cordova iscroll

  

如何在创建对象时调用任何javascript函数。

我不确定但是,当我创建任何对象时,有没有办法调用javascript函数。?

var myScroll = new iScroll("wrapper");

function objectCreated() {
    alert("yes created")
}

这里我想在创建iScroll对象时调用函数 objectCreated 函数。我知道我可以从iScroll构造函数调用函数 objectCreated ,但我不想在iscroll中进行更改。

2 个答案:

答案 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'); }
});