单击侧面选择标记不会触发点击事件

时间:2018-09-27 14:21:59

标签: javascript firefox

我不知道是否有人曾经解决过这个问题,但似乎是Firefox中的错误,我找不到解决方法。

如何重现该错误:

  1. 在文档上添加事件监听器,例如单击或鼠标按下
  2. 然后打开文档上的所有选择标签
  3. 在选择标签之外点击

预期: 要在选择标记之外单击以触发事件

我需要检测用户是否在选择标记之外单击了吗?

2 个答案:

答案 0 :(得分:1)

当您点击 <select> HTML对象时,浏览器(更具体而言是Firefox的较旧版本)会在文档中添加一个背景,并监听在其中点击以关闭<select>(在防止误点击时也很有用)。

我刚刚在Firefox 53.0上对其进行了测试,并且运行良好(onclick打开后触发了<select>)。在mousedown上会立即模糊(将所选内容置于焦点之外)并关闭它。也许,您可以共享一些代码或JSFiddle URL。

简单的 HTML <select>,其中<button>具有onclick 事件(尝试使用Firefox 53.0)

<select>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>
<button onclick="alert('Clicked')">M</button>

答案 1 :(得分:0)

@Zerfir,请在 Firefox 62.0(64位)

上尝试使用此代码段

打开选择标签并将鼠标悬停在按钮上,它不应像chrome那样更改文本。

<select>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>
<button onmouseenter="this.innerHTML = Math.random();">M</button>