2012-01-18 20 views
0

我的Firefox擴展中有一個XUL樹。當我雙擊一行時,該行就會崩潰或展開。我怎樣才能禁用這種行爲(因此只能通過點擊加號/減號來進行摺疊和展開)?我想保留雙擊其他的東西。如何在XUL表中雙擊禁用展開/摺疊

我試着禁用像下面這樣的默認動作和事件傳播,但是這不起作用。事件處理程序已執行但未阻止崩潰。

tree.addEventListener("dblclick", onTreeDoubleClick, true); 

onTreeDoubleClick = function(event) { 
    event.preventDefault(); 
    event.stopPropagation(); 
} 

回答

0

樹在事情發生之前獲取事件。據我所知只有這樣,才能得到它前面是樹的父元素上註冊一個拍攝事件處理程序:

tree.parentNode.addEventListener("dblclick", onTreeDoubleClick, true); 

當然,這假定父元素不包含除<tree>其他元素,否則你也可以捕捉這些元素上的事件 - 但你總是可以將<tree>元素放入它自己的<box>元素中。