这是问题所在。SELECT打开时, Firefox(Windows)不会触发文档单击事件。它只是关闭选择,只有下一次点击才会被计为一次点击。
重现:
- 点击选择(会出现下拉菜单)
- 单击下拉菜单外部,在文档外部(选择将被关闭)
但是,第二次点击不会触发文档点击事件。
正如您在这个Youtube 视频中看到的,有 3 次点击,但有 2 个事件。
HTML
<select>
<option value="1">Value1</option>
<option value="2">Value2</option>
<option value="3">Value3</option>
</select>
<div id="debug"></div>
JS
var n = 0;
$(document).ready(function(){
$('select').click(function(e){
e.stopPropagation();
n++;
$('#debug').text('select clicked ' + n);
});
$(document).click(function(){
n++;
$('#debug').text('document clicked '+ n);
});
})