0

JavaScript NameSpace でカスタム イベントを作成する必要がありますが、それが可能かどうかはわかりません。

次のような名前空間があります。

NAMESPACE = {

   var1 : 'value',
   var2 : 'value',

   initiate : function() {
      console.log('initiate');
   },

   clear : function(arg) {
      console.log('clear');
   }

   fail : function() {
       // Here i need to trigger the error event..
   }

}

このメソッドを使用してイベントを作成します。

var myEvent = new CustomEvent("errorX", {
  data: {
    param: "value"
  }
});

document.dispatchEvent(myEvent);

// In document.ready...
$(document).on('errorX', function(e) {
   console.log(e);
});

これは機能しますが、 を にアタッチする必要があり、これを名前空間オブジェクトにアタッチしたいと思いますaddEventlistenerdocument

$(NAMESPACE).on('errorX', function(e) {
    console.log(e);
});

これは可能ですか?

4

1 に答える 1

1

.triggerHandler次の方法を使用できます。

$(NAMESPACE).on('errorX', function(e) {
    console.log(e);
});

$(NAMESPACE).triggerHandler("errorX");

デモ: http://jsfiddle.net/Enq9h/

于 2012-08-05T12:36:09.997 に答える