jQuery提供了一個isTrigger
屬性,它允許我們知道事件是「真實事件」還是隻是「觸發」。jQuery觸發器事件,但仍然event.isTrigger假
$(ele).on("click", function(e){
if(e.isTrigger){
// this event was only triggered, not a real event
}else{
// this was a real event
}
})
對於單元測試的目的,是有辦法trigger
一個事件,並以某種方式覆蓋isTrigger
屬性..並在事件回調仍表現(具有isTrigger === false
),就好像它是一個真正的單擊事件。 。 試圖下面的代碼:
var triggerClick = jQuery.Event("click", {
isTrigger:false,
data:{
isTrigger:false
}
,但它似乎並沒有正確地傳遞..
總的來說這是一個不錯的主意,但爲什麼在只是用於測試模塊化的代碼,如果它能夠以更好的方式來完成這個唯一的目的.. – adardesign 2013-05-19 15:29:29
我會爭辯說這種方法比模擬用戶點擊更清晰。這消除了不必要的事件處理程序觸發,並允許您直接調用所需的功能。它不僅可能更高效,而且更易於閱讀。 – cadrell0 2013-05-20 13:21:54
我聽到你!不管怎麼說,還是要謝謝你! – adardesign 2013-05-20 14:36:37