繁体   English   中英

如何在chrome扩展上模拟按键事件

[英]How to simulate key press event on chrome extension

我需要使用chrome扩展在facebook状态字段中使用给定的char代码触发keypress事件。 有没有正确的方法来做到这一点。

我尝试使用以下代码。但似乎它无法正常工作。

chrome.runtime.onMessage.addListener(function(message,sender,sendResponse){
    if(message.pressEnter){
        chrome.tabs.query({active: true}, function(tabs) {
            chrome.debugger.attach({ tabId: tabs[0].id }, "1.0");
            chrome.debugger.sendCommand({ tabId: tabs[0].id }, 'Input.dispatchKeyEvent', { type: 'keypress', windowsVirtualKeyCode:13, nativeVirtualKeyCode : 13, macCharCode: 13  });
            chrome.debugger.sendCommand({ tabId: tabs[0].id }, 'Input.dispatchKeyEvent', { type: 'keyDown', windowsVirtualKeyCode:13, nativeVirtualKeyCode : 13, macCharCode: 13  });
            chrome.debugger.detach({ tabId: tabs[0].id });
        });
    }
});

当您使用chrome调试器API的Input.dispatchKeyEvent时,目标元素是什么元素? 常规事件调度需要指定目标元素。

此外,使用普通javascript调度API调度的事件不受信任,因此它们不会触发默认行为。 例如,使用javascript将字母A发送到文本输入不会对规范做任何事情。

因此,首先检查调度的事件是否可信并查找它所针对的元素。

暂无
暂无

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

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