某些按键事件在 Tampermonkey 上不起作用。
Some keypress events doesn't work on Tampermonkey.
我有一个 javascript 函数可以在 onkeypress
上做一些事情。我正在为 Chrome 使用 Tampermonkey,当我按下我分配的键时,该功能不会触发。相反,在 Greasemonkey 中,我对此没有问题。
这是我的代码:
var names=["Aries Virgo Leo","John Steve Bill Sarah","Keny Ben Lovendal"];
var i = 1;
window.onkeypress = function(e){
if(e.keyCode == 113){ // the F2 key
document.getElementsByClassName("post-text-area")[0].value = names[0];
document.getElementsByClassName("cmnt-btn")[0].click();
var repeat = setInterval(function start(){
if(i == names.length -1)clearInterval(repeat);
document.getElementsByClassName("reply")[0].click();
document.getElementsByClassName("post-text-area")[1].value = names[i];
document.getElementsByClassName("cmnt-btn")[1].click();
i++;
},2000);}};
我不知道为什么 Chrome 不接受 F1-F12、Tab、Ctrl、Delete、Insert 等按键事件。是否可以更改此设置?
F2 不能被按键捕获。您应该使用 keydown 或 keyup。
用 Tampermonkey 试过,有效。
我有一个 javascript 函数可以在 onkeypress
上做一些事情。我正在为 Chrome 使用 Tampermonkey,当我按下我分配的键时,该功能不会触发。相反,在 Greasemonkey 中,我对此没有问题。
这是我的代码:
var names=["Aries Virgo Leo","John Steve Bill Sarah","Keny Ben Lovendal"];
var i = 1;
window.onkeypress = function(e){
if(e.keyCode == 113){ // the F2 key
document.getElementsByClassName("post-text-area")[0].value = names[0];
document.getElementsByClassName("cmnt-btn")[0].click();
var repeat = setInterval(function start(){
if(i == names.length -1)clearInterval(repeat);
document.getElementsByClassName("reply")[0].click();
document.getElementsByClassName("post-text-area")[1].value = names[i];
document.getElementsByClassName("cmnt-btn")[1].click();
i++;
},2000);}};
我不知道为什么 Chrome 不接受 F1-F12、Tab、Ctrl、Delete、Insert 等按键事件。是否可以更改此设置?
F2 不能被按键捕获。您应该使用 keydown 或 keyup。
用 Tampermonkey 试过,有效。