Warm tip: This article is reproduced from serverfault.com, please click

javascript-电子:复选框未更改值?

(javascript - Electron: Check box not changing value?)

发布于 2020-11-28 20:44:56

我创建了一个使用复选框打开和关闭自身的浏览器窗口,但是,仅 true检测到处于其状态的复选框,而不是处于其false状态。

这是我在renderer.js中的代码:

const {width, height} = screen.getPrimaryDisplay().workAreaSize;
let close = document.querySelector('input[name=open_close]');
close.addEventListener('change', function(event){
  if (this.checked = true) {
  console.log("renderer");
 ipcRenderer.send('expClose',width, height);
  }

  if(this.checked = false) {
 ipcRenderer.send('expOpen',width - 500, height - 450);
  }
});

这是我的main.js:

ipcMain.on('expClose', function(e,width, height) {
    console.log('closed'); 
      mainWindow.setPosition(width - 75, height - 450);
  });
  
  ipcMain.on('expOpen', function(e,width, height) {
   console.log("opened")
   mainWindow.setPosition(width, height);
      
  });

还有我的HTML,如果需要的话:

<input type="checkbox" name="setbtn" checked="false" id="settings" class="btnset">

我假设未检测到错误状态,因为未记录打开状态。任何帮助将不胜感激。

Questioner
HaloDonuts J
Viewed
0
Gabriele Petrioli 2020-11-29 05:19:39

你使用=分配)而不是===比较

更改if (this.checked = true) { if (this.checked === true) {
if(this.checked = false) {if(this.checked === false) {