Javascript 如何在node JS中侦听操作系统单击事件?
我正在开发一个电子应用程序,你可以在其中突出显示电话号码:电子邮件、浏览器、word等。。。然后右键单击并单击自定义菜单项,然后node将该电话号码添加到列表中。我很难找到“节点”单击事件的文档,我找到的所有内容都是浏览器或窗口单击事件。但是,无论我在哪个应用程序中,我都需要这样做。这叫什么?有更好的方法吗?经过几个小时的研究,我找到了一个可以接受的解决方案,阿德森让我走上了正确的道路。如果有人需要执行类似的操作,下面是生成的代码:Javascript 如何在node JS中侦听操作系统单击事件?,javascript,node.js,electron,Javascript,Node.js,Electron,我正在开发一个电子应用程序,你可以在其中突出显示电话号码:电子邮件、浏览器、word等。。。然后右键单击并单击自定义菜单项,然后node将该电话号码添加到列表中。我很难找到“节点”单击事件的文档,我找到的所有内容都是浏览器或窗口单击事件。但是,无论我在哪个应用程序中,我都需要这样做。这叫什么?有更好的方法吗?经过几个小时的研究,我找到了一个可以接受的解决方案,阿德森让我走上了正确的道路。如果有人需要执行类似的操作,下面是生成的代码: const { app, BrowserWindow, glo
const { app, BrowserWindow, globalShortcut, clipboard } = require('electron');
const path = require('path');
const robot = require('robotjs');
const Notification1 = require('node-mac-notifier');
//removed opening window because it is irrelevant.
app.whenReady().then(() => {
globalShortcut.register('Cmd+Shift+S', () => {
robot.keyTap('c', 'command');
const number = clipboard.readText();
new Notification1(`${number} added to DNC`, {});
//Number logic here
});
});
如果您使用的是electron,则必须同时重建robotjs包和node mac notifier包,具体操作如下:
在终端中:
npm install --save-dev electron-rebuild
npx electron-rebuild -f -m node_modules/node-mac-notifier
npx electron-rebuild -f -m node_modules/robotjs
重建包时,可能会出现“未检测到gyp或clt”错误,以下是修复方法:
xcode-select --print-path
sudo rm -r -f <path>
xcode-select --install
xcode选择——打印路径
sudo rm-r-f
xcode选择--安装
这是不可能的,根本没有这样的事情。您不能影响其他非您的应用程序的行为。如果这些应用程序有自己的右键单击行为,会发生什么情况?它是否应该被节点应用程序指定的内容覆盖?还是两件事都应该发生?那可能会造成一点混乱。对不起,你的概念有缺陷。我可能是错的,但我99%确信,除非你控制操作系统本身,否则你无法实现这一点,即使这样,它也有可能造成完全混乱。我明白了,它是否可以与应用程序“监听”键盘快捷键的键盘快捷键一起工作。。。复制突出显示的文本,然后将其放在列表中?取决于操作系统,在linux上您可以“订阅”任何perihperie事件,在Windows上不可以,也不确定是否使用OSx