Electronでは、以下のスクリプトが私のものですmain.js
。これは、ウィンドウを復元してフォーカスするショートカットですが、ウィンドウ内の入力にフォーカスしたいと思います。どうすればそれを達成できますか?
main.js
app.on('ready', function(){
createWindow();
var ret = globalShortcut.register('Command+Control+Alt+G', function() {
mainWindow.restore();
mainWindow.focus();
$('.js-search').focus();
});
})
ページフォーカス時に、webContentsを使用してメインプロセスからレンダラープロセスにメッセージを送信できます。
ページ(レンダラープロセス)は、そのメッセージをリッスンしてから、要素自体にフォーカスすることができます。
主なプロセス
globalShortcut.register('Command+Control+Alt+G', function() {
win.restore();
win.focus();
win.webContents.send('focus-element', '.js-search');
});
レンダラープロセス(ページ)
<script>
const {ipcRenderer} = require('electron');
ipcRenderer.on('focus-element', (event, selector) => {
document.querySelector(selector).focus();
});
</script>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加