我有一個關於頁面的全屏覆蓋頁面,該頁面在調用時位於站點內容上。 我想讓用戶能夠點擊任何地方關閉覆蓋。但是,這與約文中的超鏈接相沖突。因此,如果我點擊疊加層中的超鏈接,它會關閉疊加層,然後轉到超鏈接。 如何從超鏈接中分離出超鏈接?全屏覆蓋點擊任意位置以關閉覆蓋內的文本鏈接衝突
這裏是一個jsfiddle來演示這個問題。 http://jsfiddle.net/USzAb/
我有一個關於頁面的全屏覆蓋頁面,該頁面在調用時位於站點內容上。 我想讓用戶能夠點擊任何地方關閉覆蓋。但是,這與約文中的超鏈接相沖突。因此,如果我點擊疊加層中的超鏈接,它會關閉疊加層,然後轉到超鏈接。 如何從超鏈接中分離出超鏈接?全屏覆蓋點擊任意位置以關閉覆蓋內的文本鏈接衝突
這裏是一個jsfiddle來演示這個問題。 http://jsfiddle.net/USzAb/
只需添加這阻止點擊事件傳播上的所有超鏈接裏面#ablock
$("#ablock a").click(function(event) { event.stopPropagation(); });
你應該添加一些代碼,如...
$('#ablock').click(function(event) {
event.stopPropagation();
});
您遇到的問題是click
事件冒泡通過祖先元素,直到它觸發#ablock
的click
事件。
發生此問題的原因是超鏈接上的單擊會起泡至疊加層。你需要的東西,以制止這種氣泡狀
$('a', '#ablock').click(function(e){e.stopPropagation()})
這將仍然允許鏈接點擊的功能,並停止該事件被你處理覆蓋單擊處理程序。
我已經將它添加到的jsfiddle
您的演示測試,這看起來一樣我的回答 – 2012-04-05 11:18:14
我寫它,而你在你的張貼:-) – 2012-04-11 14:07:20