如何以编程方式从Safari中运行的Javascript代码生成按键事件?看起来WebKit使用DOM 3级模型从Javascript创建键盘事件,而DOM 3级键盘事件模型不支持keypress事件.还有其他方法可以使用吗?
我正在寻找尽可能纯粹的Safari / WebKit DOM解决方案.我真的不想修改网页,我也不想在外部库上添加依赖项.我需要激活任何现有的按键处理程序,因此无法添加新的处理程序并直接调用它.
看起来WebKit具有在其UIEvent类中定义的keypress事件的keyCode和charCode属性,但它们是只读的.有没有办法设置这些属性?以下不起作用:
var evt = document.createEvent('UIEvents');
evt.initUIEvent('keypress',true,window,0);
evt.keyCode = 114; // 'r'
evt.charCode = 114;
alert("keyCode = " + evt.keyCode + ",charCode = " + evt.charCode); // both 0
最佳答案