防止子錨點點擊事件觸發父級點擊事件
如程式碼所示,當在父div 中點擊子錨點元素時對於onclick 事件,這兩個事件都會觸發。要解決此問題並阻止父級點擊事件執行,您有兩個選擇:
選項1:檢查事件來源
透過檢查jQuery 傳遞的eventargs 對象,您可以確定啟動點擊的元素:
$("#clickable").click(function(e) { if($(e.target).is("div")) { window.location = url; return true; } });
如果傳送者元素不是div 本身,則div的onclick 處理程序不會被觸發。
選項2:停止事件冒泡
或者,您可以使用stopPropagation( ) 子錨點上的方法:
$("#clickable a").click(function(e) { // Custom anchor handler e.stopPropagation(); });
此方法可防止事件傳播到父級div,確保僅觸發錨點點擊事件。
以上是如何防止子錨點擊觸發父點擊事件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!