Javascript 打开下拉列表时的jquery事件侦听器

Javascript 打开下拉列表时的jquery事件侦听器,javascript,jquery,event-listener,Javascript,Jquery,Event Listener,使用此简单的下拉菜单: <select id="foo"> <option>bar</option> </select> 只有当用户通过选择选项或在框外单击来关闭下拉列表时,才会触发该事件。当他打开盒子时,有什么方法可以得到这个活动吗 用于此目的的正确事件是一起更改单击,并且每次更改或单击选择输入时都会触发 $(“#foo”)。在(“单击更改”,函数(e){ $(“#输出”).html(“事件类型:+e.target.nodeName);

使用此简单的下拉菜单:

<select id="foo">
   <option>bar</option>
</select>

只有当用户通过选择选项或在框外单击来关闭下拉列表时,才会触发该事件。当他打开盒子时,有什么方法可以得到这个活动吗

用于此目的的正确事件是一起
更改单击
,并且每次更改或单击选择输入时都会触发

$(“#foo”)。在(“单击更改”,函数(e){
$(“#输出”).html(“事件类型:+e.target.nodeName);
});

福oo
酒吧
尝试活动:

show.bs.dropdown

shown.bs.dropdown


为我工作

可能是重复的是的,这是一个相同的问题。被接受的答案使用了mousedown事件,这并不漂亮,但我想我/我们必须处理它。谢谢你!我将使用
焦点
。不完全是我想要的,但是足够接近。当你真的“改变”(哈哈..sry)某样东西时,“改变”事件就会触发。例如,选择“事物”而不是“酒吧”。但是当您选择“bar”时,当“bar”已经被选中时,或者您甚至打开下拉菜单时,它不会触发。@Watte因此,我更新了代码以同时触发
change
click
,这是您想要的吗?打开菜单时不会触发事件。Firefox开发者版68.0b10
show.bs.dropdown

shown.bs.dropdown
    $(document).on('focus', '#foo', function () {
        console.log('Dropdown Open');
    });