我正在使用“ electron”为我的网站创建一个WebView App,并且我希望在其中具有选项卡式窗口,我选择了“ electron-navigation”,它工作正常,但是在WebView中,我网站的输入元素没有作用除“选择”元素外,其他元素都可以工作,但是当我“模糊” WebView时,其中一些元素便开始工作,即,我专注于其他应用程序或桌面,然后重新聚焦,它开始起作用,但是textarea却无法工作……请帮助我
我尝试在代码内寻找解决方案,但找不到任何想法,我整夜都在Google搜索,但没有运气
这是Index.html
<div id="nav-body-tabs"></div>
<div id="nav-body-ctrls"></div>
<div id="nav-body-view-wrapper">
<div id="nav-body-views"></div>
</div>
这是index.js
const path = require('path')
const url = require('url')
const { ipcRenderer } = require('electron')
document.getElementById('nav-body-views').style.position = 'absolute'
document.getElementById('nav-body-views').style.width = '100%'
document.getElementById('nav-body-views').style.height = '100%'
const navDefaultURL = url.format({
pathname: 'vclass.us/user/login',
protocol: 'https',
slashes: true
})
const enav = new (require('electron-navigation'))({
newTabParams: [navDefaultURL]
})
enav.newTab(navDefaultURL, {
id: "test",
title: 'vClass',
icon: 'default',
close: true,
readonlyUrl: true,
contextMenu: true
})
enav.openDevTools("test")
});
这是electronic.js
const { app, BrowserWindow } = require('electron');
const url = require('url');
const path = require('path');
let win;
function createWindow() {
win = new BrowserWindow({
title: 'vClass',
width: 960,
height: 540,
webPreferences: { nodeIntegration: true, webviewTag: true },
show: false,
center: true,
minWidth: 640,
minHeight: 360,
titleBarStyle: 'hidden',
icon: path.join(__dirname, 'assets/icons/png/64x64.png')
});
win.setMenuBarVisibility(false)
win.once('ready-to-show', () => {
win.show()
})
win.on('closed', () => {
win = null
})
win.loadURL(`file://${__dirname}../../assets/index.html`)
}
app.on('ready', createWindow);
app.on('activate', () => {
if (win === null) {
createWindow()
}
})
let link;
app.on('open-url', function (event, data) {
event.preventDefault();
link = data;
});
app.setAsDefaultProtocolClient('vClass');
module.exports.getLink = () => link;
`
我希望输入结果应该像在浏览器上一样可点击
注意:当我直接从电子中加载URL时,一切正常,但在Webview中不起作用