也許這個時候很多大佬就去在css+div樣式布局裡面做文章了。正確的解決方案應該是封裝一個阻止事件冒泡的方法。一聽說要“防事件冒泡”可能大家耳熟能詳,什麽是冒泡這種理論性的東西,筆者不想多說。而今就有一個實際的項目擺在眼前。
首先你需要在js層面上搞個方法封裝起來:
function stopPropagation(e) { e = e || window.event; if (e.stopPropagation) { // W3C阻止冒泡方法 e.stopPropagation(); } else { e.cancelBubble = true; // IE阻止冒泡方法 } }
緊接著你在子事件方法裡加入一個
stopPropagation()
語句在運行過程中間卡著就行了,注意,因爲封裝體裡已經嘗試去拿window.event對象, 所以無需特意傳遞event參數。