>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Поддержка пользователей http://forum.mozilla-russia.org/viewforum.php?id=26 >добавление пунктов в главное контекстное меню http://forum.mozilla-russia.org/viewtopic.php?id=79232 |
austri > 04-01-2025 12:12:05 |
(ff 40.0.2) какие две строчки нужно добавить? (в файл click.js), файл click.js находится внутри xpi-файла: chrome\content\click\click.js xpi-файл соответствует одному из двух имеющихся расширений, и находится этот файл вот здесь: ...появляется серый пункт (неактивный) (то есть, всё равно не работающий) Выделить код Код:var keys = { goHome: { key: "D", modifiers: "control" }, ... key_close: { key: "w", modifiers: "control" }, ... showAllHistoryKb: true, }; а нужно, чтобы home появился в главной контекстной менюшке Выделить код Код:setTimeout((n, css) => { var data = { "tm-tabsList": { lab: "opened" }, "tm-content-undoCloseList": { lab: "closed" }, "menuitem_inspector": { lab: "inspector", ctrl: true }, "menu_openAddons": { lab: "extensions", ctrl: true }, "menu_newNavigatorTab": { lab: "new" }, "menu_close": { lab: "close" }, "menu_preferences": { lab: "options" }, "context-copylink": { lab: "copy address" }, ... "context-viewinfo": { lab: "information", ctrl: true }, "menu_browserConsole": { lab: "console", ctrl: true }, "context-undo": { lab: "un-do" }, "context-paste": { lab: "paste" }, "context-delete": { lab: "delete" }, "context-copy": { lab: "copy", ctrl: true }, }; |
austri > 05-01-2025 11:20:35 |
у меня "home" означает "about:blank", и вот таким обходным вариантом... Выделить код Код:(menuitem => { menuitem.id = "my-about-blank"; menuitem.setAttribute("label", "home"); menuitem.setAttribute("oncommand", 'loadURI("about:blank");'); document.getElementById("contentAreaContextMenu").appendChild(menuitem); })(document.createElement("menuitem")); ...мне удалось добавить пункт "home" в главное контекстное меню, и он работает, и добавить так, чтобы он разместился между вчера упомянутыми пунктами "close" и "options": |
Dumby > 05-01-2025 15:24:46 |
austri пишет
Почему тогда 'loadURI("about:blank");' а не "BrowserHome();"
Может menu_showAllHistory: { lab: "history" }, |
austri > 05-01-2025 15:55:58 |
Dumby, оба пункта заработали, спасибо
могу ли по такому же простому принципу сделать и для home? (уточняю на всякий случай: |
austri > 06-01-2025 10:16:30 |
подскажите, пожалуйста, не только по поводу строчки для home, но и для таких строчек как: - find (то есть, как если бы было нажато ctrl + f) |
Dumby > 06-01-2025 21:08:48 |
Не совсем. Код не создаёт пункты меню, Можно изменить, чтобы создавал. скрытый текст Выделить код Код:// for(var id in data) { var obj = data[id], elm = n(id); (obj.ctrl ? ctrlIds : ids).push("#" + id); if (elm) { remAttrs(elm); var br, obs = elm.getAttribute("observes"); if (obs) br = n(obs), br && remAttrs(br); } else (elm = document.createElement("menuitem")).id = id; if ("lab" in obj) br && br.removeAttribute("label"), elm.setAttribute("label", obj.lab); obj.oncommand && elm.setAttribute("oncommand", obj.oncommand); df.appendChild(elm); } Тогда можно написать что-то типа "created-home": { lab: "home", oncommand: "BrowserHome();" },
Какой-то слишком общий вопрос. А насчёт find, back, forward, А back и forward — есть в «главном контекстном», menu_find: { lab: "find" }, |
austri > 06-01-2025 22:03:49 |
Dumby, спасибо вам за помощь |