我怎样才能用jquery做一个循环?

Posted

技术标签:

【中文标题】我怎样才能用jquery做一个循环?【英文标题】:How can i make a loop with jquery? 【发布时间】:2021-10-25 02:59:10 【问题描述】:

我在 jquery 中做了这个,但它只能工作一次。如何制作循环并修复它?

$(function() 

    $('.bar-menu').on().click(function() 
        $('.header-menu-mobile ul').css('display', 'block');
        $('.form_mobile .search-bar input').css('margin-top', '-297px');
        $('.header_mobile .form_mobile .icon-search').css('margin-top', '-283px');
        $('.header_mobile .form_mobile .bar-menu').css('margin-top', '-295px');
        $(this).off().click(function() 
            $('.header-menu-mobile ul').css('display', 'none');
            $('.form_mobile .search-bar input').css('margin-top', '-72px');
            $('.header_mobile .form_mobile .icon-search').css('margin-top', '-59px');
            $('.header_mobile .form_mobile .bar-menu').css('margin-top', '-67px');
        );
    );
);

【问题讨论】:

你考虑过jQuery.each()迭代吗? 【参考方案1】:

off() 将删除 on() 事件处理程序。使用标志变量代替它。

$(function() 
    $('.bar-menu').on().click(function() 
        $(this).context.flag = !$(this).context.flag;
        if($(this).context.flag) 
            $('.header-menu-mobile ul').css('display', 'block');
            $('.form_mobile .search-bar input').css('margin-top', '-297px');
            $('.header_mobile .form_mobile .icon-search').css('margin-top', '-283px');
            $('.header_mobile .form_mobile .bar-menu').css('margin-top', '-295px');
         else 
            $('.header-menu-mobile ul').css('display', 'none');
            $('.form_mobile .search-bar input').css('margin-top', '-72px');
            $('.header_mobile .form_mobile .icon-search').css('margin-top', '-59px');
            $('.header_mobile .form_mobile .bar-menu').css('margin-top', '-67px');
        
    );
);

【讨论】:

以上是关于我怎样才能用jquery做一个循环?的主要内容,如果未能解决你的问题,请参考以下文章

我怎样才能为这个matlab“for循环”做矢量化?

我怎样才能改变传说jquery flot的形状

使用jquery,我怎样才能找到一个图像是不是存在一个div中的某个属性?

我怎样才能避免这个css3背景循环跳转?

像 while 循环一样,我怎样才能跳过 for 循环中的一个步骤?

我怎样才能使它成为一个更好的递归动画 jQuery 脚本?