Javascript 如何使电子菜单在当前窗口中进行常规搜索?
我正在寻找一种方法来创建一个带有标签Find…&在当前浏览器窗口中执行常规搜索。我可以添加该选项,但我不知道如何访问浏览器以按ID获取元素。我当前的代码:Javascript 如何使电子菜单在当前窗口中进行常规搜索?,javascript,reactjs,electron,full-text-search,Javascript,Reactjs,Electron,Full Text Search,我正在寻找一种方法来创建一个带有标签Find…&在当前浏览器窗口中执行常规搜索。我可以添加该选项,但我不知道如何访问浏览器以按ID获取元素。我当前的代码: const template = [ { label: 'Find..', click() { document.querySelector('#filter').focus() return console.log("Click working!") }, }, ] const
const template = [
{
label: 'Find..',
click() {
document.querySelector('#filter').focus()
return console.log("Click working!")
},
},
]
const menu = Menu.buildFromTemplate(template)
return Menu.setApplicationMenu(menu)
现在,我想在click事件中执行以下操作:
document.querySelector('#filter').focus()
基本上,这个ID
属于我想要添加焦点的搜索input
字段。不幸的是,文档
或窗口
未定义
基本上,这个ID属于我想要添加的搜索输入字段
专注于。遗憾的是,文档或窗口未定义
从main
,您可以很容易地获得活动窗口():
但我不知道如何直接访问窗口文档。(奇怪的是,它是不可访问的)。我想您可以向窗口发送IPC
消息,或者使用以下方法:
我从来都不需要使用后者。可以工作;-) 嗯。像什么?看来你的问题被打断了。@NoGrabbing谢谢我更新了我的答案。我没有意识到!基本上,我只需要访问DOM来选择该元素并使用它做一些事情。Hanks,我尝试了
contents.executeJavaScript(code[,usersignature])
,但它也是未定义的。你给了我很多小费!
let win = BrowserWindow.getFocusedWindow();
contents.executeJavaScript(code[, userGesture])