Страницы: 1
Выделить кодКод:
function myLoadHandler(e) { window.removeEventListener(e.type, arguments.callee, false); document.getElementById("myKey").setAttribute("key", "P"); } window.addEventListener("load", myLoadHandler, false);
спасибо за помощь.
буду просить пользователей перезапустить браузер, чтобы настройки вступили в силу. :)
ещё по случаю хочю спросить, я для хранения настроек в одном расширении подсмотрел вот такую конструкцию:
var pref = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch); ... pref.setCharPref('hotkey','P'); ... var hotk=pref.getCharPref('hotkey');
храню так настройки.
это правильно, или нужно по другоу делать?
К сожалению, такие штуки срабатывают только в момент загрузки окна.
Правда, по идее, если очень надо, можно перехватывать нажатия клавиш своим обработчиком, но это будет несколько больше кода. :)
а как это скажется на производительности?
я вот размышляю, что если есть уже обработчик, то он где-то прописан, и нужно лишь до него достучатся и поменять один параметр. я в этом не разбираюсь, обьясните если не трудно.
я не понимаю, зачем довешивать обработчик, если он уже есть.
есть у меня в оверлее такая ветка:
<keyset id="mainKeyset"> <key id="ila_hotkeys" modifiers="alt any control" key="K" oncommand="ila_hotkey_fs();" /> <key id="ila_hotkey" modifiers="alt any control" key="L" oncommand="ila_hotkey_f();" /> </keyset>
я в функции ila_hotkey_fs() делаю следующее:
После этого я ожидаю, что вызов функции ila_hotkey_f() поменяется на ctrl+alt+P, но этого не происходит. Атрибут меняется, это я проверял при помощи алерта в самой функции ila_hotkey_f().
Как мне поменять кнопки, по котороым будет происходить вызов функции?
…Страницы: 1