Я пытаюсь добавить горячие клавиши в веб-приложение, которое мы используем на работе.Решением было применить сценарий Greasemonkey, но веб-система использует Liferay Portal, созданный с помощью серверных апплетов JavaX и jspx.
Я НЕ ЗНАЮ, КАК ПРИМЕНИТЬ "WAITFORKEYELEMENTS" ответ мои знания не настолько продвинуты.
В чем проблема?Мне нужно найти ярлык для ссылки, то есть «история файла дела», добавить событие keylistener и смоделировать щелчок мышью.Вот пример ссылки:
<a id="form1:commandLink1211" name="form1:commandLink1211"
onclick="submitForm('form1',1,{source:'form1:commandLink1211'});
return false;"
class="linkMenu" href="#">
Look case file history
</a>
Мне нужно, чтобы она имитировала щелчок мышью по этой ссылке, но getElementById возвращает ноль.Страница загружается «пусто», а затем загружает модуль jspx.Я знаю, что greasemonkey ставит сценарий первым.Я пытался использовать
window.onload=funcion
document.ready() //didn´t know how to add this to my code
Другие решения включают использование таймера, но я не знаю, как его применить.
Текущий скрипт greasemonkey:
(function(){
document.addEventListener('keydown', function(e) {
// pressed alt+g
if (e.keyCode == 71 && !e.shiftKey && !e.ctrlKey && e.altKey && !e.metaKey)
{
console.log ("key pressed");
document.getElementById('form1:commandLink1211').click();
}
}, false);
})();