Codepen :http://codepen.io/JTBennett/pen/MKXjdO
问题:
$(document).on('click', function (e) {
if($(e.target).closest('.treatments, .info').length == 0){
if($(".treatments, .info").is(":visible")) {
$(".treatments, .info").fadeOut("fast")
}
}
});
所以,这里的一切都按照我想要的方式运行,除非你点击下拉项目(.treatments& .info),子菜单立即消失。这是由于上面的代码是为了告诉子菜单在单击文档中的任何位置时消失,除了元素本身,并且只有元素可见时才会消失。
我将尝试更改函数条件的顺序,看看我是否可以随意使用该函数,但是我已经没有这个想法了。
答案 0 :(得分:2)
没有$.slideOut()
方法。您在控制台上收到错误。将其更改为$.slideUp
,它可以正常工作。 http://codepen.io/anon/pen/yeEVjq
// $(".info").slidePut("fast");
$(".info").slideUp("fast");
请务必检查您的控制台!