我试图在Safari中使用JavaScript来模拟键盘事件。在JavaScript中触发键盘事件
我已经试过这样:
var event = document.createEvent("KeyboardEvent");
event.initKeyboardEvent("keypress", true, true, null, false, false, false, false, 115, 0);
...而且这样的:
var event = document.createEvent("UIEvents");
event.initUIEvent("keypress", true, true, window, 1);
event.keyCode = 115;
尝试这两种方法,但是,我也有同样的问题后:代码执行后,事件对象的keyCode
/which
属性设置为0
,而不是115
。
有谁知道如何可靠地创建和发送Safari中的键盘事件? (我宁愿如果有可能实现它在普通的JavaScript。)
在发射事件的例子你们是不是要执行你定义的代码或一些组合键的浏览器理解?如果是自己的代码,最好设置一个事件包装器,您可以通过“真实”键盘界面或通过其他事件生成器调用事件包装器,如您在此处所述。适当重构。 – Nolte 2009-06-07 08:55:52
在这个例子中,我试图模拟用户按“s”。最终,我试图模拟用户在Apple Dashboard Widget中按下Command-R。 – 2009-06-07 09:08:31
你的代码解决了我的问题:) – 2011-01-18 14:45:18