2010-06-01 74 views
1

我有一些我想澄清的情況,如果有人對這個問題有任何經驗並願意向我解釋,我會很高興。是否event.preventDefault取消更改事件?

我有了一個change事件處理一個textarea:

textarea.bind('change', function(event){ 
    // do something 
}); 

可以想像,如果我有某種能夠抓住所有的用戶點擊的Click事件處理程序的:

$(document).bind('click', function(event){ 
    event.preventDefault(); 
}); 

請問這個處理程序也取消blurchange textarea的事件,如果用戶用鼠標點擊了它?如果會,我怎樣才能防止這種情況發生?

更新:謝謝您的回答,我不能說,我試了一下,但我有一個類似的情況,我想排除爲什麼change沒有在我的文字區域發射的可能性。在我的情況下,有一個change處理程序,如果我點擊默認情況下禁止所有click事件並將其替換爲自定義行爲的區域,則不起作用。

+0

你試過了嗎? – SLaks 2010-06-01 14:55:49

回答

2

不,它只會阻止'click'事件的默認瀏覽器行爲。

+0

我在想,也許默認的瀏覽器行爲也是觸發'blur'事件。 – 2010-06-01 18:25:01

-1

不, 它不會。

0

假設,如果你剛剛嘗試過它? (回答:不會如前所述)

如果您不希望用戶能夠離開輸入字段(這聽起來像陌生的用戶交互),您可能只需設置重點關注blur/change事件 - 也許您需要一個小超時讓事件先完成。我不會推薦它,但它總是值得嘗試