【问题标题】:Get this function to work when I left mouse click?当我单击鼠标左键时让这个功能起作用?
【发布时间】:2016-05-08 07:58:47
【问题描述】:

我正在创建一个扩展程序并打算使用 tampermonkey 来运行它,我希望它在我左键单击并按住它时仍能运行。

// @run-at       document-end

(function() {
var amount = 6;
var duration = 50; //ms

var overwriting = function(evt) {
    if (evt.keyCode === 0) { // Left mouse click?
        for (var i = 0; i < amount; ++i) {
            setTimeout(function() {
                window.onkeydown({keyCode: 87}); // KEY_W
                window.onkeyup({keyCode: 87});
            }, i * duration);
        }
    }
};

window.addEventListener('keydown', overwriting);
})();

【问题讨论】:

    标签: javascript html mouse


    【解决方案1】:

    尝试改用"mousedown"

    (function() {
    var amount = 6;
    var duration = 50; //ms
    
    var overwriting = function(evt) {
        for (var i = 0; i < amount; ++i) {
            setTimeout(function() {
                window.onkeydown({keyCode: 87}); // KEY_W
                window.onkeyup({keyCode: 87});
            }, i * duration);
        }
    };
    
    window.addEventListener('mousedown', overwriting);
    })();
    

    【讨论】:

      【解决方案2】:

      "event.which" ,对于按键或鼠标事件,该属性表示被按下的具体按键或按钮。

      // @run-at       document-end
      
      (function() {
      var amount = 6;
      var duration = 50; //ms
      
      var overwriting = function(evt) {
          if (evt.keyCode === 0) { // Left mouse click?
              for (var i = 0; i < amount; ++i) {
                  setTimeout(function() {
                      window.onkeydown({keyCode: 87}); // KEY_W
                      window.onkeyup({keyCode: 87});
                  }, i * duration);
              }
          }
      };
      /*
        1 = Left   mouse button
        2 = Centre mouse button
        3 = Right  mouse button
      */
      
      window.addEventListener('mousedown', function(event) {
        if (event.which === 1) {
      /* Left mouse button was clicked! */
          overwriting();
         }
        });
      })();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-11-04
        • 2021-09-29
        • 1970-01-01
        • 2014-03-29
        • 1970-01-01
        • 2019-07-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多