0

我有一个输入和一个复选框,当输入聚焦时,它会在其下显示一些信息。

问题是:当我点击复选框显示这些信息时,它会隐藏信息(因为我的输入不再集中)但未选中复选框。

这是一个重现此行为的工作 plunker 。

有没有办法checkbox在这种情况下进行检查?

编辑 :

我认为问题是因为输入失去了对事件的关注mousedown并且复选框在事件上被选中mouseup(或者可能click)所以当mouseup事件被触发时输入已经失去焦点所以它下面的消息被隐藏并且复选框移动向上。因此,当mouseup触发事件时,光标不再位于复选框上,这就是未选中复选框的原因。

4

2 回答 2

0

我对您的问题的解决方案附在此处。这是一个简单的方法。我已经向它添加了 JQuery 代码。你可以试试这段代码。我已经使用 JSFiddle 编写了这段代码。链接如下:

[https://jsfiddle.net/679g9p6p/1/] [1]

如果您想在从文本框中聚焦时隐藏信息,那么您可以尝试下面给出的代码:

[https://jsfiddle.net/xxsL2e03/100/] [2]

于 2018-02-28T10:52:38.870 回答
0

纯 CSS 中没有任何内容。您需要在 JS 上绑定焦点事件。

像这样的东西:

var input = document.querySelector('#input');

input.addEventListener('focus', function() {
  this.classList.add('focus');
});

然后将您的 CSS 从更改:focus.focus

于 2018-02-28T09:36:11.227 回答