0
我有一個簡單的燈箱在頁面上,其中關閉圖標有一些類.closeIt
。當用戶點擊關閉圖標時,我想將焦點移回到觸發燈箱的鏈接元素。jQuery:燈箱關閉事件處理
我試着添加一些函數,它需要輸入觸發鏈接和關閉圖標類的名稱。
function focusBack(triggeringLinkId,closingLinkClass){
$(closingLinkClass).click(function() {
$(triggeringLinkId).focus();
});
}
併爲每個燈箱,我手動調用該函數類似下面:
focusBack('#someLink','.closeIt')
這種方法效果很好,如果我只有在頁面上一個收藏夾,但如果我有一個以上的燈箱,它開始將它綁定到最後一個被調用的函數,現在無論哪個燈箱關閉,焦點都會返回到我最後稱爲focusBack
函數的觸發鏈接。
處理這種情況的最佳方法是什麼?
我不知道添加或刪除點擊偵聽器關閉按鈕是好主意還是不好,因爲您可能會覆蓋其他點擊操作。但是,您可以使用'$(closingLinkClass).off(「click」)'在每次焦點後刪除點擊監聽器。 –