原因:由于JavaScript为单线程,同一时间只能执行处理一个事件。“blur优先于click执行”。而在本示例中,由于blur处理程序,会将对下拉框展示区隐藏,所以导致其后续click事件并不会执行。

解决方案1:对blur事件进行延迟,让click先执行。

$("input").blur(function(){  
        setTimeout(function(){  
            // input框失去焦点要做的事情 
            
        }, 300);  
    });  
    // 选择对应选项,并赋值给input框  
    $(".search-list li a").click(function(){  
        console.log("执行");  
    });  

  

相关文章:

  • 2022-12-23
  • 2021-12-19
  • 2022-01-15
  • 2021-07-03
  • 2021-12-25
  • 2022-12-23
猜你喜欢
  • 2021-06-10
  • 2021-10-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案