Javascript 如何在jquery中只执行一次操作?

Javascript 如何在jquery中只执行一次操作?,javascript,jquery,html,css,popup,Javascript,Jquery,Html,Css,Popup,我一直在用这个脚本在我的网站上显示模式弹出窗口,里面有一些二维码,它在单个页面上工作,但在分类页面上它被多次调用,因此它在同一个窗口中显示了10次。我怎样才能将其限制为仅在最近的ancor位置显示一次 代码: 我的二维码 X //弹出窗口 变量scrollTop='10'; var newHeight='100'; $(窗口).bind('scroll',function(){ scrollTop=$(窗口).scrollTop(); 新高度=滚动顶部+100; }); $('.popup

我一直在用这个脚本在我的网站上显示模式弹出窗口,里面有一些二维码,它在单个页面上工作,但在分类页面上它被多次调用,因此它在同一个窗口中显示了10次。我怎样才能将其限制为仅在最近的ancor位置显示一次

代码:

  • 我的二维码 X //弹出窗口 变量scrollTop='10'; var newHeight='100'; $(窗口).bind('scroll',function(){ scrollTop=$(窗口).scrollTop(); 新高度=滚动顶部+100; }); $('.popup trigger')。单击(函数(e){ e、 停止传播(); if(jQuery(window).width()<767){ $(this.after($(“.popup”)); $('.popup').show().addClass('popup-mobile').css('top',0); }否则{ $('.popup').removeClass('popup-mobile').css('top',newHeight').toggle(); }; }); $('html')。单击(函数(){ $('.popup').hide(); }); $('弹出btn关闭')。单击(函数(e){ $('.popup').hide(); }); $('.popup')。单击(函数(e){ e、 停止传播(); });
    实现它的一个简单方法是将其html同时隐藏:

    $('html').click(function() {
      $('.popup').hide();
      $('.popup').remove();
    });
    

    实现它的一个简单方法是将其html同时隐藏:

    $('html').click(function() {
      $('.popup').hide();
      $('.popup').remove();
    });
    
    删除分配给它的类,而不是hide()。 $('.popup').remove()

    删除分配给它的类,而不是hide()。 $('.popup').remove()

    //弹出窗口
    变量scrollTop='10';
    var newHeight='100';
    $(窗口).bind('scroll',function(){
    scrollTop=$(窗口).scrollTop();
    新高度=滚动顶部+100;
    });
    $('.popup trigger')。单击(函数(e){
    e、 停止传播();
    if(jQuery(window).width()<767){
    $(this.after($(“.popup”));
    $('.popup').show().addClass('popup-mobile').css('top',0);
    }否则{
    $('.popup').removeClass('popup-mobile').css('top',newHeight').toggle();
    };
    });
    $('html')。单击(函数(){
    $('.popup').hide();
    $('.popup').remove();
    });
    $('弹出btn关闭')。单击(函数(e){
    $('.popup').hide();
    });
    $('.popup')。单击(函数(e){
    e、 停止传播();
    });
    
    
    
  • 我的二维码 X
    //弹出窗口
    变量scrollTop='10';
    var newHeight='100';
    $(窗口).bind('scroll',function(){
    scrollTop=$(窗口).scrollTop();
    新高度=滚动顶部+100;
    });
    $('.popup trigger')。单击(函数(e){
    e、 停止传播();
    if(jQuery(window).width()<767){
    $(this.after($(“.popup”));
    $('.popup').show().addClass('popup-mobile').css('top',0);
    }否则{
    $('.popup').removeClass('popup-mobile').css('top',newHeight').toggle();
    };
    });
    $('html')。单击(函数(){
    $('.popup').hide();
    $('.popup').remove();
    });
    $('弹出btn关闭')。单击(函数(e){
    $('.popup').hide();
    });
    $('.popup')。单击(函数(e){
    e、 停止传播();
    });
    
    
    
  • 我的二维码 X
    解决方案非常简单,我不知道我怎么会错过它:

    jQuery(document).ready(function($){
      $('.popup-trigger').click(function(){
        $(this).closest('.caption').find('.popup');
      });
    })
    

    解决方案非常简单,我不知道我怎么会错过它:

    jQuery(document).ready(function($){
      $('.popup-trigger').click(function(){
        $(this).closest('.caption').find('.popup');
      });
    })
    

    它似乎不起作用,你能写完整的代码吗,也许我遗漏了什么?它似乎不起作用,你能写完整的代码吗,也许我遗漏了什么?它似乎不起作用,你能写完整的代码吗,也许我遗漏了什么?它似乎不起作用,你能写完整的代码吗,也许我错过了什么?我试着这样做,但没有成功。这似乎是有问题的部分$('.popup').remove();升华显示这是无效的。我试过这样,但它不工作。这似乎是有问题的部分$('.popup').remove();升华将此显示为无效。通过指定位置:固定值,css修复。通过指定位置:固定值,css修复。