2009-07-22 41 views
0

我有一個鏈接元素,用於捕獲mousedown事件並停止冒泡事件,以便頁面中的其他元素不被選中。然而,在Firefox中(3 & 3.5)當我使用DOM 2事件模型它仍然選擇頁面中的其他元素。Firefox DOM2鼠標停止事件使用stopPropagation時選擇元素

我已經在opera中測試過它,它沒有選擇其他元素就能正常工作。另一個奇怪的問題是,如果我使用DOM 0事件模型,它可以正常工作,並且不會選擇其他元素。這是在Firefox的錯誤還是我只是做錯了?

這裏有2個事件處理程序我用來測試

past.addEventListener('mousedown', function (e) { 
    e.stopPropagation(); 
    return false; 
}, false); 

past.onmousedown = function (e) { 
    e.stopPropagation(); 
    return false; 
}; 

回答

0

你試過e.preventDefault()stopPropagation將停止被調用的祖先元素上的事件處理程序,但這與防止採取默認操作不同。由於DOM規範沒有明確說明鼠標事件和選擇應該如何在事件模型方面進行交互,它可能是其中一個瀏覽器以單向方式操作,另一個以另一種方式操作,而且既不是「正確」也不是「錯誤」。

+0

太棒了:)太容易了! – Alex 2009-07-23 01:20:03

相關問題