XUL: Многократно повторно използване на наслагване в същия файл?

Разработвам разширение за Firefox. Има меню X, което трябва да покажа както в менюто Инструменти, така и в контекстното меню. Елементът от менюто Инструменти и елементът от контекстното меню са дефинирани в един и същи файл, но меню X в друг файл.

Тъй като използвам повторно меню X по id, само последното му използване е ефективно. Как мога да го използвам повторно многократно в един и същ файл без излишък?


person Ali Shakiba    schedule 03.06.2011    source източник


Отговори (3)


Може да се направи с помощта на XBL.

person Ali Shakiba    schedule 03.06.2011

И аз не намерих добро решение. Подходът е по-скоро да дефинирате менюто в наслагването само веднъж и след това да го клонирате във вашия манипулатор на събития "load". След това можете да вмъкнете клонинга на второто място. Трябва да внимавате, защото ID атрибутите трябва да останат уникални - така че ако менюто ви използва ID атрибути, ще трябва допълнително да ги пренапишете. Грозно, знам.

person Wladimir Palant    schedule 06.06.2011

По дефиниция идентификаторите са уникални. Това означава, че не можете да споделите елемента от менюто, но можете да споделите кода, който се изпълнява при извикване на действието. Един от начините да постигнете това е да използвате команди.

person speedball2001    schedule 03.06.2011
comment
Благодаря, но трябваше да използвам повторно XUL маркиране, а не JS код. Намерих отговора. - person Ali Shakiba; 03.06.2011