简体   繁体   English

某些按键事件在Tampermonkey上不起作用。

[英]Some keypress events doesn't work on Tampermonkey.

I have a javascript function which does something on onkeypress . 我有一个在onkeypress上执行某些操作的javascript函数。 I'm using Tampermonkey for Chrome and when I press the key I assigned, the function doesn't fire. 我正在使用Tampermonkey for Chrome,当我按分配的键时,该功能不会启动。 In Greasemonkey instead, I have no problem with this. 相反,在Greasemonkey中,我对此没有任何问题。

Here is my code : 这是我的代码:

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);}};

I don't know why Chrome doesn't accept key events like F1-F12, Tab, Ctrl, Delete, Insert etc. Is it possible to change this ? 我不知道为什么Chrome不接受F1-F12,Tab,Ctrl,Delete,Insert等按键事件。是否可以更改此设置?

F2 can't be caught with keypress. 按键无法捕获F2 You should use either keydown or keyup. 您应该使用keydown或keyup。

Tried with Tampermonkey, it works. 与Tampermonkey一起尝试过,它可以工作。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM