Страницы: 1
есть Overlay, в нём есть:
<popup id="contentAreaContextMenu" onpopupshown="showWhenPopup(event);"> <menuitem id="foo" label="some_Label" oncommand="toDO();" /> </popup>
и есть функция showWhenPopup.
Всё работает. Но я заметил, что этот метод не совсем корректен.
Это я использую в одном мелком расширении для личных целей.
Позже понадобилось второе. Там всё реализовано точно так (id у menuitem'a другой и имя функции). И теперь работает только одна функция.
Я так понял что элемент popup id="contentAreaContextMenu" один и 2 функции на onpopupshown нельзя завадать - отсюдова проблема?
Как правильно сделать? Мне надо чтоб в контекстном меню добавился элемент, и при открытии меню его лейбл изменился (добавился выделенный на странице текст)
Заранее спасибо
Отсутствует
на одно событие вполне можно вешать несколько обработчиков, естетсвенно, что имена у функций должны быть разными, либо они должны находиться в разных классах. не знаю, как через xul, но я делал так:
xul:
js:
var foo = { init : function() { window.addEventListener("load", foo.load, false); }, load : function() { document.getElementById("contentAreaContextMenu").addEventListener("popupshowing", foo.popup, false); }, popup : function (event) { // ... } }; foo.init();
Отредактировано Shutnik (15-02-2008 11:02:43)
Отсутствует
Страницы: 1