我正在使用电子IPC与来自webview的访客内容进行沟通和捕获事件。(有关代码的详细信息,请参阅此link)
<webview id="myView" src="http://127.0.0.1:8080" nodeintegration preload="./inyector.js"></webview>
在inyector.js文件中,我使用以下代码捕获每个点击事件:
document.addEventListener('click', function(event) {
ipcRenderer.sendToHost(event);
});
以上代码将触发页面上的每次点击,但我想要的是捕获具有某个ID的特定按钮点击,也希望将信息从该按钮传递到我的主页。
我已经尝试了下面的代码,但它不起作用:
var btn = document.getElementById("mybtn");
btn.addEventListener('click', function (event) {
ipcRenderer.sendToHost(event);
});
任何帮助将不胜感激。谢谢
更新:
我能够解决上述问题。我没有使用预加载文件,而是在我的访客应用程序中添加了IPC,并使用相同的预加载脚本代码将事件从渲染过程发送到主进程。
答案 0 :(得分:0)
如果你有一个id =“myButton”的按钮,只需为该按钮添加一个事件监听器。在click事件中,您可以捕获所需的任何信息并将其作为参数传递。
var btn = document.getElementById('myButton');
btn.addEventListener('click', function (event) {
var info = myButton.text;
ipcRenderer.sendToHost('myButtonClick', {info: info});
});