事件觸發兩次的三種原因:
1. 容器的多次初始化
隱蔽級別★★★
錯誤表現為在**中將乙個容器初始化了兩次,例如
此行**乍一看是正常的獲取乙個控制器然後初始化,其實getcontroller方法已經將控制器初始化了,這時再呼叫init()方法就會註冊兩次,一般犯了一次這樣的錯誤,看了原始碼以後就不會再犯了,畢竟每個專案裡用到的地方不多.
2.控制器的繼承
隱蔽級別★★
錯誤表現為註冊全域性事件,在繼承的子控制器內又註冊事件,這是某論壇友人出現的錯誤,注意就好了.
3.容器註冊控制器,同時在**裡又使用了getcontroller方法而使得控制器的多次註冊
隱蔽級別★★★★
這個錯誤隱蔽級別高的原因是用開發工具構建mvc時會自動預設註冊容器,但因為它沒有任何手動行為和顯著提示,而導致人不太容易想到.
例如ext.loader.setconfig();
models: [
'menumodel'
], stores: [
'menustore'
], views: [
'mywindow'
], controllers: [
'maincontroller',
'dzcontroller'
], name: 'phidias',
launch: function()
});
而在編寫選單的時候我們經常會使用getcontroller方法,所以被在不同的地方註冊多次.
共勉!
jquery的一次點選實現
1.專案中需要實現乙個需求,第乙個點選的時候允許彈出dialog物件框,第二次不允許,除非重新重新整理頁面 2.在js的click事件中定義乙個標籤屬性 相當於設定乙個全域性變數 var auclot 上拍 3.變數定義的位置 在登入之後的index.html頁面,設定全域性變數 var baseu...
一次點選觸發多次事件問題
在ajax請求成功的方法裡寫click事件,實現顯示隱藏功能,但結果點選一次,可能觸發多次顯示隱藏的切換,後採用先解綁click事件再繫結click事件的方法解決掉,ps unbind後新增click,不要寫明方法,不然還是會出現上述問題。如下 store value drop down each ...
如何實現鏈結只能被點選一次
有時候,只希望 某個鏈結只能被點選一次,怎麼做呢?下面給出3中方法!第一種 利用js在點選後把href變成 把taget變成空。p a onclick var that this settimeout function 0 return true href target blank open goo...