javascript:打开下拉列表时不会触发单击事件

javascript:打开下拉列表时不会触发单击事件,javascript,html,jquery,css,Javascript,Html,Jquery,Css,这是我的html <div class="test"> <div class="select"> <select name="slct" id="slct"> <option class="default_option" value="A">A

这是我的html

  <div class="test">
            <div class="select">
              <select name="slct" id="slct">
                <option class="default_option" value="A">A</option>

                <option value="AAAA">AAAA</option>
                <option value="CNAME">CNAME</option>
                <option value="MX">MX</option>
                <option value="NS">NS</option>
                <option value="PTR">PTR</option>
                <option value="SOA">SOA</option>
                <option value="SRV">SRV</option>
                <option value="TXT">TXT</option>
                <option value="CAA">CAA</option>
              </select>
            </div>
          </div>
但问题是,当下拉菜单打开时,控制台不会打印。
控制台在下拉菜单关闭时打印。

您可以使用自定义下拉菜单,而不是
元素。

我认为您是在DOM完全加载之前附加事件

您应该将事件附加到
$(document).ready(function(){…

或:使用
.on()
确保事件将附加到稍后添加到DOM的元素

此外,如果您希望代码仅在打开时执行,则应使用
焦点

$('body').on('focus', '.test', function () {

$('body')。关于('focus','test',函数(){
//$(this.parent().toggleClass(“活动”);
log('hello');
});
A.
AAAA
CNAME
MX
NS
PTR
SOA
SRV
文本
民航局

对我来说,你的代码运行得很好。@s.kuznetsov我的意思是当我打开下拉菜单时。我需要触发一个事件。但在我当前的实现中,当我单击下拉菜单中的第一个选项时,会触发该事件。当我单击下拉菜单选项时,会触发该事件。但是,我想要的是,一旦我打开下拉菜单,立即触发该事件sopen@Ashik,您是否尝试了我在更新的答案中提到的
focus
event?是的。它现在已修复。我目前所做的是:但问题是,当我再次聚焦时,event不是triggered@Ashik,
focus
事件只工作一次,若要使该工作成功,请单击“其他位置”并再次聚焦,以丢失事件:)单击别处意味着?通过编写代码,单击别处?实际上,当触发焦点事件时,我应用一个类,以便更改下拉图标。因此,当用户再次单击下拉图标时,我需要应用相同的内容。
$('body').on('focus', '.test', function () {