Javascript 使用stopPropagation时,Firefox DOM2鼠标按下事件选择元素

Javascript 使用stopPropagation时,Firefox DOM2鼠标按下事件选择元素,javascript,events,event-bubbling,Javascript,Events,Event Bubbling,我有一个link元素,在这里我捕获mousedown事件并阻止事件冒泡,这样页面中的其他元素就不会被选中。然而,在firefox(3&3.5)中,当我使用DOM 2事件模型时,它仍然会选择页面中的其他元素 我在opera中测试过它,它运行良好,无需选择其他元素。另一个奇怪的问题是,如果我使用DOM0事件模型,它可以正常工作,并且不选择其他元素。这是firefox中的一个bug还是我做错了 下面是我用来测试的两个事件处理程序 past.addEventListener('mousedown', f

我有一个link元素,在这里我捕获mousedown事件并阻止事件冒泡,这样页面中的其他元素就不会被选中。然而,在firefox(3&3.5)中,当我使用DOM 2事件模型时,它仍然会选择页面中的其他元素

我在opera中测试过它,它运行良好,无需选择其他元素。另一个奇怪的问题是,如果我使用DOM0事件模型,它可以正常工作,并且不选择其他元素。这是firefox中的一个bug还是我做错了

下面是我用来测试的两个事件处理程序

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

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

您是否尝试过
e.preventDefault()
stopPropagation
将停止调用祖先元素上的事件处理程序,但这与阻止执行默认操作不同。由于DOM规范并没有真正指定鼠标事件和选择在事件模型方面的交互方式,因此它可能是一个浏览器以一种方式进行交互,一个浏览器以另一种方式进行交互,并且两者都不是“对”或“错”