以编程方式触发 Ctrl+S

2022-01-13 00:00:00 events keyboard javascript

我想使用 JavaScript 发出 CtrlS keydown 事件.理想情况下,该解决方案适用于大多数现代浏览器(最高 IE 9).

I would like to emit a CtrlS keydown event using JavaScript. Ideally the solution works in most modern browsers (up to IE 9).

我正在编写测试并且需要测试我的处理程序的键绑定.CtrlS 只是一个例子,它可以是任何带有修饰键的键绑定.我知道 keyEvent.initKeyboardEvent() 方法,但我无法正确使用它来触发在按下键盘键后打印出全键盘事件时得到的相同事件.p>

I am writing tests and need to test my handler for key bindings. CtrlS is just an example, it can be any key binding with a modifier key. I know about the keyEvent.initKeyboardEvent() method but I was not able to use it correctly to trigger the same event I got when printing out the full keyboard event after pressing the key from the keyboard.

推荐答案

我想发出一个 CtrlS keydown 事件

I would like to emit a CtrlS keydown event

你的意思是,为了触发浏览器的另存为"对话框什么的?出于安全原因,这是不可能的.如果是这样,那将是一个巨大的安全问题——想象一下:每个网站都可以任意触发浏览器功能.

You mean, in order to trigger the browser's "Save as" dialog or something? That's not possible for security reasons. It would be a huge security problem if it were - imagine: every web site could arbitrarily trigger browser functions.

相关文章