我有一個包含2個事件的輸入元素:焦點和點擊。他們都開啓了相同的幫手功能。如何在焦點和點擊事件觸發時只運行一次函數
當我選項卡,輸入,焦點事件火災和我的助手被運行一次。那裏沒有問題。
當元素已具有焦點,我又點擊它,點擊事件火災和我的助手運行一次。那裏也沒有問題。
但當元素沒有焦點,和我點擊它,這兩項活動火了,我的幫手被運行兩次。我怎樣才能讓這個幫手只運行一次?
我看到這裏一對夫婦類似的問題,但並沒有真正按照自己的答案。我還發現了.live jQuery處理程序,看起來好像它可以工作,如果我有它看狀態類。但似乎應該有一個更簡單的方法。 .one處理程序可以工作,除非我需要這個工作不止一次。
感謝您的幫助!
感謝您的回答。我想過檢查時間,但希望有一種更優雅的方式。儘管代碼示例非常感謝! – dylanized
@dylanized - 我沒有辦法知道給定的點擊也只是觸發了焦點(作爲同一事件序列的一部分)而沒有查看時間。 – jfriend00
@ jfriend00 - 焦點總是首先被調用。焦點總是首先的原因是它會觸發onmousedown,但點擊將要求mousedown和mouseup發生。 –