欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

点击某元素外面隐藏

$('#show_hx').click(function(){
        $('#list_hx').toggle();
        return false;
    });
    $('#list_hx li a').click(function(){
        $('#list_hx').hide();
        $('#show_hx').html($(this).html());
        $('#thisdiqu').val($(this).attr('value'));
        return false;
    });

//当点击到 $('#list_hx') 外面时,进行隐藏
    $(document).click(function(event){
    var target = event.target || event.srcElement;
    var parent1 = $(target);
    var parent = $('#menuinputul');
//最好不要用 parent1!=parent 来判断,可能是同一个jquery对象也有可能不相等,但我不知原因
//建议还是用 $a.get(0) == $b.get(0) 来判断吧($a和$b均为jq对象) 如果用$a[0]的话,在$a.length为0的情况下会报下标越界错误,除非先做好判断。
    while(parent1.length!=0 && parent1.get(0)!=parent.get(0)){
        parent1 = parent1.parent();
    }
//最好不要用 parent1!=parent 来判断,可能是同一个jquery对象也有可能不相等,但我不知原因
//建议还是用 $a.get(0) == $b.get(0) 来判断吧($a和$b均为jq对象) 如果用$a[0]的话,在$a.length为0的情况下会报下标越界错误,除非先做好判断。
    if(parent1.get(0) !== parent.get(0)){
        $('#menuinputul').hide();
    }
})
普通分类: