我想通过按键来触发已经存在的网站上的Javascript功能。
示例:触发my_function('我的参数1');当我按下键盘上的1键时。
我可以在Firefox的调试器控制台上手动输入命令,它可以工作。但我无法想出一种从外部程序触发Javascript函数的简单方法。我可以使用Firefox命令行吗? EventGhost? AutoHotKey?我应该写一个Firefox扩展吗?
如果您的解决方案意味着使用其他网络浏览器,那么欢迎您!
答案 0 :(得分:0)
我建议你看看https://api.jquery.com/keydown/。 Jquery可能是解决方案,但问题不明确。您正在谈论的网站是您的网站还是您想从外部注入此触发事件?你想每次注入这个触发器吗?
如果它只是一夜情,您可以使用浏览器控制台,但如果不是,您可能会对开发附加组件或者油脂扩展器感兴趣。
更新:Yo可以使用eventghost,特别是窗口插件http://www.eventghost.org/docs/pluginlist.html来触发firefox上的按键。现在,每次访问时都必须在页面中注入一个javascript事件处理程序,大部分工作都已完成。
更新2: 这是基本的插件,;)玩得开心
var self = require('sdk/self');
exports.main = function() {
require('sdk/page-mod').PageMod({
include: '*.org',
contentScript: 'document.onkeypress = function (e) {console.log(e.which);}'
});
}
要使用这个东西,请从mozilla网站下载cfx-tools(抱歉,我不能发布超过2个链接)按照第一个教程(一定要阅读如何使用cfx工具)并准备好使用我在上面发布的代码。
最后的建议:
document.onkeypress = function (e) { if(e.which == 49){ /* trigger my function if I press 1*/}}
再见
答案 1 :(得分:0)
以下是脚本管理频道更改请求的方式:
我不会在这里粘贴脚本,因为它很长并且Stack Overflow代码解析器真的不喜欢AutoHotkey代码!只要问你是否想要它。
@EdoPut建议更清洁,但它没有解决Flash全屏时的焦点问题。无论如何,再次感谢EdoPut的努力。