如何在firefox中使用javascript访问书签面板?

如何在firefox中使用javascript访问书签面板?,javascript,firefox-addon,xul,firefox-addon-sdk,bookmarks,Javascript,Firefox Addon,Xul,Firefox Addon Sdk,Bookmarks,我正在开发一个firefox插件,我必须访问书签面板,查看它进入查看->侧栏->书签,并将一个菜单项添加到其上下文菜单中,当单击菜单项时,获取它所单击的项 Por示例: 您打开书签面板,右键单击访问次数最多的项目,然后单击我的菜单项,然后我想知道访问次数最多的项目是否已被单击 我尝试了以下代码,但没有成功: var bookmarkMenu = document.getElementById('menu_bookmarksSidebar'); var observer = document.cr

我正在开发一个firefox插件,我必须访问书签面板,查看它进入查看->侧栏->书签,并将一个菜单项添加到其上下文菜单中,当单击菜单项时,获取它所单击的项

Por示例: 您打开书签面板,右键单击访问次数最多的项目,然后单击我的菜单项,然后我想知道访问次数最多的项目是否已被单击

我尝试了以下代码,但没有成功:

var bookmarkMenu = document.getElementById('menu_bookmarksSidebar');
var observer = document.createElement('observes'); //Observe when the bookmark panel shows
observer.setAttribute('element','viewBookmarksSidebar');
observer.setAttribute('attribute','checked');
observer.addEventListener('broadcast',function(event){
console.log("Bookmark panel showing " + event.target);

var sidebarWindow = document.getElementById("sidebar").contentWindow;//Try to get the sidebar window
if(sidebarWindow == null){
console.log("NULL");
}
var bar = sidebarWindow.getElementById("placesContext");
if (bar == null){
console.log("NO Sidebar window");
 }


});
bookmarkMenu.appendChild(observer);
我知道如何访问浏览器窗口,但无法访问边栏窗口。 根据bookmarkPanel.xul,该面板上下文菜单的id是placeContext,但我无法访问它。如何访问右键单击的书签/元素

event.target总是给我[object xulement],我如何才能看到它是什么元素

我试过这个:

var sXML = new XMLSerializer().serializeToString(event.target);
但似乎不起作用

谢谢

我想

var bar = sidebarWindow.getElementById("placesContext");


将产生影响:-

解决方案能否基于使用xul覆盖?或者你需要用js来做?需要用javascript;这是一个插件。谢谢,我会尝试的,但我也尝试了var sidebarWindow=document.getElementByIdsidebar.contentDocument;但它不起作用。谢谢
var bar = sidebarWindow.document.getElementById("placesContext");