Javascript 继承jQuery';s事件模型

Javascript 继承jQuery';s事件模型,javascript,jquery,Javascript,Jquery,我正在为依赖jQuery的站点API开发一个SDK,我希望在SDK中利用jQuery的定制事件模型。我如何才能最好地继承、包装或以其他方式利用jQuery的事件,而不需要将它们附加到任意DOM元素 目前的基本结构如下: ;(function($, global, undefined){ function MySDK(opts){ } MySDK.prototype.on = function(evt, fn){}; MySDK.prototype.trigger = fun

我正在为依赖jQuery的站点API开发一个SDK,我希望在SDK中利用jQuery的定制事件模型。我如何才能最好地继承、包装或以其他方式利用jQuery的事件,而不需要将它们附加到任意DOM元素

目前的基本结构如下:

;(function($, global, undefined){

  function MySDK(opts){

  }

  MySDK.prototype.on = function(evt, fn){};
  MySDK.prototype.trigger = function(evt, data){};

  if(global.MySDK){
    throw new Error("MySDK has already been defined");
  }else{
    global.MySDK = MySDK;
  }
})(jQuery, typeof window === "undefined" ? this : window);

您可以将事件和侦听器附加到
窗口
对象

例如:

MySDK.prototype.trigger = function(evt, data) {
    $(window).trigger(evt, data);
};

如果您正在编写javascript供其他人使用,我还强烈建议您通过在src-less
iframe
中运行框架来研究沙箱。如果每个版本的SDK都有自己的
iframe

那就更好了。我简直不敢相信我没有想到使用window对象,它应该可以完美地工作。我想读更多关于
iframe
sandboxing的内容,你有关于这个主题的推荐读物吗?我在谷歌上搜索过一些,但这些例子似乎集中在使用eval来注入代码上,这似乎有点黑客味。这是滑梯台。有很多示例代码可供学习。