Я нашел много информации о том, как использовать initEvent
и dispatchEvent
functions, но я не могу на всю жизнь заставить их работать на практике.Как имитировать нажатие клавиши в сценарии Greasemonkey?
Я пытаюсь получить скрипт, чтобы нажать Введите ключ каждые 5 секунд. Мой userscript код (минус значения метаданных) ниже:
// ==UserScript==
// @namespace http://userscripts.org/scripts/show/153134
// @require https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js
//
// @grant unsafeWindow
//
// ==/UserScript==
$(function(){
window.setInterval(function(){
var ev = document.createEvent("KeyboardEvent");
ev.initKeyEvent("keypress", true, false, window, 0, 0, 0, 0, 13, 13);
window.dispatchEvent(evt);
}, 5000);
});
заказ мой сценарий на userscript, чтобы увидеть, как плохо работает (добавить пользователя включает домен и проверить его на любом <textarea>
). Разве Greasemonkey просто не пропускает его, или мне нужно делать что-то по-другому?
ли вы когда-нибудь заставить его работать? –
Нах, я закончил тем, что делал это с помощью AutoHotKey. Возможно, Python был бы лучшим решением для кросс-платформенной совместимости. –
Может ли autohotkey делать это в фоновом режиме, пока вы делаете другие вещи? И где бы вы посмотрели с помощью python? Любые советы приветствуются. –