Javascript 可以在Chrome上以编程方式模拟快捷键事件吗?
是否可以在JavaScript中的Chrome上以编程方式模拟快捷键事件? 我只想在javascript中触发快捷方式事件,并在不单击图标的情况下显示chrome扩展popup.html。我尝试了很多方法,但都失败了 以下是我的javascript代码:Javascript 可以在Chrome上以编程方式模拟快捷键事件吗?,javascript,google-chrome-extension,Javascript,Google Chrome Extension,是否可以在JavaScript中的Chrome上以编程方式模拟快捷键事件? 我只想在javascript中触发快捷方式事件,并在不单击图标的情况下显示chrome扩展popup.html。我尝试了很多方法,但都失败了 以下是我的javascript代码: <script> function keypressEvt() { var keyboardEvent = document.createEvent('KeyboardEvent'); var in
<script>
function keypressEvt() {
var keyboardEvent = document.createEvent('KeyboardEvent');
var initMethod = typeof keyboardEvent.initKeyboardEvent !== 'undefined' ? 'initKeyboardEvent' : 'initKeyEvent';
keyboardEvent[initMethod](
'keypress', // event type: keydown, keyup, keypress
true, // bubbles
true, // cancelable
null, // view: should be window
true, // ctrlKey
false, // altKey
true, // shiftKey
false, // metaKey
0, // keyCode: unsigned long - the virtual key code, else 0
"P".charCodeAt(0), // charCode: unsigned long - the Unicode character associated with the depressed key, else 0
);
document.dispatchEvent(keyboardEvent);
}
document.addEventListener('keypress', function (e) {
console.log(event, 'ctrlKey: ' + e.ctrlKey, 'shiftKey: ' + e.shiftKey, e.char, e.key);
e.preventDefault();
});
// trigger
setTimeout(function () {
keypressEvt()
}, 2000)
</script>
函数keypressEvt(){
var keyboardEvent=document.createEvent('keyboardEvent');
var initMethod=typeof keyboardEvent.initKeyboardEvent!=“未定义”?“initKeyboardEvent”:“initKeyEvent”;
键盘事件[初始化方法](
'keypress',//事件类型:keydown、keypup、keypress
对,//气泡
true,//可取消
null,//视图:应为窗口
对,//ctrlKey
false,//altKey
true,//shiftKey
false,//元密钥
0,//keyCode:unsigned long-虚拟密钥代码,否则为0
“P”.charCodeAt(0),//charCode:unsigned long-与按下的键关联的Unicode字符,否则为0
);
文件发送事件(键盘事件);
}
文档.添加的文本列表器('keypress',函数(e){
log(事件'ctrlKey:'+e.ctrlKey',shiftKey:'+e.shiftKey,e.char,e.key);
e、 预防默认值();
});
//触发
setTimeout(函数(){
keypressEvt()
}, 2000)
什么是快捷键事件?Chrome extensions中的自定义快捷键。就像:Ctrl+Shift+P,显示popup.thml