Javascript 启动键盘事件流

Javascript 启动键盘事件流,javascript,cross-browser,dom-events,keyboard-events,Javascript,Cross Browser,Dom Events,Keyboard Events,有没有一种方法可以通过编程(使用JS)在输入[type=text]或textarea上启动键盘事件流? 我的意思是,我想让元素写一个字符,就像用户使用键盘一样。意思是,它将考虑插入符号位置、文本选择、重写\插入状态、CAPS锁定状态等等。 我发现现有的解决方案(和问题)并没有给出这样的结果,而只是在该元素上触发了一个按键或其他一些键盘事件。我想做一些类似的事情: document.getElementById('input').pressKey('e'); 解决方案必须是跨浏览器的(Firef

有没有一种方法可以通过编程(使用JS)在
输入[type=text]
textarea
上启动键盘事件流?
我的意思是,我想让元素写一个字符,就像用户使用键盘一样。意思是,它将考虑插入符号位置、文本选择、重写\插入状态、CAPS锁定状态等等。 我发现现有的解决方案(和问题)并没有给出这样的结果,而只是在该元素上触发了一个
按键
或其他一些键盘事件。我想做一些类似的事情:

document.getElementById('input').pressKey('e');

解决方案必须是跨浏览器的(Firefox、Chrome和IE8+),并且不应包含Adobe Flash等外部插件,这些插件只能与网页一起发送。

我所知道的就是jQuery方式,如果您感兴趣的话——像这样?这两种方法都不像用户按下了一个键。我认为这是不可能的,因为检测您需要的某些状态超出了javascript的范围。如果您获取keycode事件,检查shift并查看字符是否为大写,则可能会推断Caps lock,但无法从高级脚本了解低级状态。这是javascript访问操作系统级别的安全风险,这是不允许的。我的意思不是推断所有这些属性,只是使用浏览器API(如果有的话)。这并不是一个安全风险,尽管这并不一定意味着访问操作系统级别——它意味着只访问浏览器。