我的Firefox扩展中有一个XUL树。当我双击一行时,该行会折叠或展开。如何禁用此行为(以便只能通过单击加号/减号来进行折叠和展开)?我想保留双击其他内容。
我已尝试禁用默认操作和事件传播,如下所示,但这不起作用。事件处理程序已执行但未阻止崩溃。
tree.addEventListener("dblclick", onTreeDoubleClick, true);
onTreeDoubleClick = function(event) {
event.preventDefault();
event.stopPropagation();
}
答案 0 :(得分:0)
树在你做之前得到了事件。 AFAIK提前获得它的唯一方法是在树的父元素上注册捕获事件处理程序:
tree.parentNode.addEventListener("dblclick", onTreeDoubleClick, true);
当然,假设父元素不包含<tree>
以外的元素,否则您也会捕获这些元素上的事件 - 但您始终可以将<tree>
元素放入它本身就是<box>
元素。