一旦removeEventListener被調用,是否可以安全地假定刪除的處理程序不會被調用?這是一個比較寬泛的問題,所以這裏有一些具體的例子。removeEventListener在所有瀏覽器中都是線程安全的嗎?
- 單擊按鈕,並將其單擊事件分派到執行隊列中。在事件可以被處理之前,removeEventListener被調用,移除按鈕的事件處理程序。怎麼了?
- 函數被調用,需要3毫秒才能完成。在該函數結束時,調用removeEventListener,刪除按鈕的點擊處理程序。在這三毫秒的時間內,按鈕被點擊。在上一個函數完成執行後,處理程序是否會被調用?
它是安全的執行調用removeEventListener相同功能的清理行動,或必須使用一個或的setTimeout首先確保執行隊列爲空,一些其他的方法?這種行爲在瀏覽器中有所不同嗎?
相關文檔也讚賞。提前致謝!
我明白了正常的Javascript執行全部發生在單個線程上,但我不確定這是否也適用於DOM事件的排隊。感謝您的鏈接,這些信息是有幫助的。 – 0x4e2