需求
实现下面这么一个搜索框下拉图,当鼠标点击到搜索框显示下边div容器,鼠标点击别处该div容器默认隐藏
实现步骤:
给该div容器默认隐藏,点击到搜索框后通过js中的show方法进行展示,失去焦点后再进行隐藏
问题:
由于该实现方式局限,当点击展示div框中的元素时,由于失去元素该div容器被隐藏掉,无法进行跳转
解决思路:
增加一个函数延迟方法,延迟隐藏容器,使焦点能得以跳转完成再隐藏
.blur(function(){
// setTimeout设置函数等待2毫秒运行
setTimeout(function(){
$search.removeClass("focus");
// hide的方法就是改变样式为:display:none
$n_s_hide.hide();
}, 200);
});