jquery - 在 jQuery 中单击元素外部时触发的函数

标签 jquery stoppropagation

我想在单击正文时显示循环中的不同元素,但元素 #search-container form 除外。它有效,但只有当我第一次单击元素 #search-container form 时,它才有效一次。

$('html').click(function(event) {
    $('#search-container form').click(function(event){
        event.stopPropagation();
    });
    $('html').on('click',function() {
        $('#small-search a').toggleClass('notvisible');
        $('#session').toggleClass('notvisible');
        $('#search-container').css('position','absolute');
        $('#search-container form').toggleClass('visible');
    });
});

最佳答案

$('html').not("#search-container form").on('click',function(){
    $('#small-search a').toggleClass('notvisible');
    $('#session').toggleClass('notvisible');
    $('#search-container').css('position','absolute');
    $('#search-container form').toggleClass('visible');
});

关于jquery - 在 jQuery 中单击元素外部时触发的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16087448/

相关文章:

javascript - 如何显示 Highcharts 取决于 HTML 中的选择标签

javascript - 如何在父dom上使用 "stopPropagation"?

javascript - 如何捕捉 stopPropagation 事件

javascript - 如果我重复输入,则会停止传播

events - stopPropagation 和 live() 方法。我缺少什么?

javascript - 为什么 event.stopPropagation 也停止了我的 Bootstrap Collapse?

javascript - 在 css 中选定的开始日期和结束日期之间的悬停效果

Javascript:OnChange 未触发

javascript - 获取每个 div 的所有选择值,其中多个 div 具有相同的类名

javascript - 从 Parse.com 获取最后一个/最新的对象