冒泡事件

   剛開始的時候,不知道什麼是冒泡事件?感覺程序中的應用不會很多,也感覺特別不好理解,沒接觸到代碼是這樣理解的:冒泡事件就是觸發一個事件,它會相應的一級一級向外冒泡,觸發相應的冒泡事件。

  一次,查找bug時纔有所瞭解。bug的現象是:某個瀏覽器中,當“回車”時,頁面會報出500的錯誤,而其他瀏覽器則不會出現這樣的問題。剛開始以爲是瀏覽器兼容的問題,一直向這個方向找錯,但是最後師父給看了一下,原來不是瀏覽器兼容,是冒泡事件。

  因爲錯誤是拋到頁面上的,說明頁面跳轉了,不是ajax的異步請求,敲回車導致頁面跳轉了,說明某個form表單被提交了,而又不能在其他版本重現,說明DOM嵌套有問題,於是瀏覽器的容錯機制把DOM修正了,出問題的瀏覽器則剛好把回車時間包到某個form裏了。


  解決的辦法:(阻止冒泡事件)

event.stopPropagation();


當驗證form表單中的內容時,若出錯,則阻止默認動作。

  阻止事件的默認動作:

event.preventDefault();//暫時在項目中未用到


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章