gpt4 book ai didi

Jquery、Javascript 和观察者模式

转载 作者:行者123 更新时间:2023-12-01 00:25:53 25 4
gpt4 key购买 nike

我尝试在 javascript 和 JQuery 中使用观察者模式,但触发器和绑定(bind)不起作用。我怎样才能得到“alert('notify linked');”运行?谢谢;)

(function($){
var NoteApp = function(){
var self = this;
this.notifications = [];
this.EVENT = {
NOTIFY: 'notify'
};
this.button = {
ask_number: $('#ask-number'),
ask_email: $('#ask-mail'),
ask_out: $('#ask-out')
};

var Button = function(){

};


var Data = function(app){

$(app.notifications).bind(app.EVENT.NOTIFY, function(){
alert('notify binded');
});

}(this);


var UI = function(app){

app.button.ask_number.bind(app.EVENT.NOTIFY, function(){
alert('notify 2');
});

app.button.ask_number.click(function(){
//alert(app.EVENT.NOTIFY);
$(app.notifications).trigger(app.EVENT.NOTIFY);
return false;
})


}(this);
}

NoteApp = new NoteApp();
})(jQuery);

最佳答案

以下是关于您的代码的一些注释:

  1. notifications 数组始终为空 - []。您的代码中没有任何内容将元素放入其中,因此 bind函数不绑定(bind)任何内容。
  2. NoteApp = new NoteApp(); 应在 DOM 准备就绪或 ask_numberask_emailask_out< 时调用 元素可能尚未初始化。

关于Jquery、Javascript 和观察者模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2584520/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com