Tag: 循环

jQuery – 隐藏除第一个之外的所有元素

假设我有10个按钮。 我想要隐藏除第一个按钮之外的所有按钮。 我试图使用jQuery中的each()来完成它,但它不起作用。 这是我的剧本。 这只是一个测试,看看我是否可以获得按钮的索引。 没有出现错误。 $(‘button’).each(function(index){ alert(index); }); 附加信息: 我的整个剧本就是这个 $(function(){ $(‘div#here’).load(‘test.php’); // This is where all the buttons will come from $(‘button’).each(function(index){ alert(index); }); });

如何让jquery在循环中的每个ajax调用之后立即附加输出

我想附加一个元素并立即更新。 console.log()按预期显示数据,但append()在for循环完成之前不执行任何操作,然后立即将其全部写入。 index.html的: … Page loaded. Data: test.js: $(document).ready(function() { for( var i=0; i<5; i++ ) { $.ajax({ async: false, url: 'server.php', success: function(r) { console.log(r); //this works $('#Data').append(r); //this happens all at once } }); } }); server.php: <?php sleep(1); echo time()."”; ?> 在for循环完成之后,页面甚至不会呈现。 在运行javascript之前,它至少应该首先呈现HTML吗?

在循环中绑定单击事件处理程序导致jQuery中的问题

我试图运行以下代码: 我将参数传递给函数,但它始终具有循环中最后一个对象的值。 我在stackoverflow上阅读了一些关于它的文章,但我无法找到如何让它在我的解决方案中运行。 该对象是从服务器返回的JSON对象。 它的所有价值都是正确的。 for(var i = 0;i<parents.length;i++){ var row = $(document.createElement("tr")); var colName = $(document.createElement("td")); var aDisplayCol = $(document.createElement("a")); var parentId = parents[i]['PARENT_ID']; aDisplayCol.attr("href","#").html(parents[i]['NAME']); aDisplayCol.bind('click',function(){ alert(parentId);}); colName.append(aDisplayCol); row.append(colName); $('#pages tbody').append(row); } 谢谢

JSON与Jquery的递归循环问题

IM有这样的JSON字符串 [{“group_id”:”1″,”group_name”:”coupler system”,”subgroups”:[{“group_id”:”9″,”group_name”:”core”,”subgroups”:0},{“group_id”:”10″,”group_name”:”dual”,”subgroups”:0}]},{“group_id”:”2″,”group_name”:”powersource\/engine”,”subgroups”:[{“group_id”:”11″,”group_name”:”petrol”,”subgroups”:[{“group_id”:”13″,”group_name”:”ECO-whisper”,”subgroups”:[{“group_id”:”15″,”group_name”:”yes”,”subgroups”:0},{“group_id”:”16″,”group_name”:”no”,”subgroups”:0}]}]},{“group_id”:”12″,”group_name”:”electric”,”subgroups”:[{“group_id”:”14″,”group_name”:”mains”,”subgroups”:[{“group_id”:”17″,”group_name”:”220V”,”subgroups”:0},{“group_id”:”18″,”group_name”:”110V”,”subgroups”:0}]}]}]},{“group_id”:”3″,”group_name”:”tool connections”,”subgroups”:[{“group_id”:”19″,”group_name”:”1(STO)”,”subgroups”:0},{“group_id”:”20″,”group_name”:”2(MTO)”,”subgroups”:0}]},{“group_id”:”4″,”group_name”:”oil content”,”subgroups”:[{“group_id”:”21″,”group_name”:”2L?”,”subgroups”:0},{“group_id”:”22″,”group_name”:”4L?”,”subgroups”:0},{“group_id”:”23″,”group_name”:”6L?”,”subgroups”:0}]},{“group_id”:”5″,”group_name”:”hose reels”,”subgroups”:[{“group_id”:”24″,”group_name”:”no”,”subgroups”:0},{“group_id”:”25″,”group_name”:”yes”,”subgroups”:0}]},{“group_id”:”6″,”group_name”:”tool support + carry”,”subgroups”:[{“group_id”:”29″,”group_name”:”no”,”subgroups”:0},{“group_id”:”30″,”group_name”:”yes”,”subgroups”:[{“group_id”:”31″,”group_name”:”wheelset”,”subgroups”:[{“group_id”:”32″,”group_name”:”yes”,”subgroups”:0},{“group_id”:”33″,”group_name”:”no”,”subgroups”:0}]}]}]},{“group_id”:”7″,”group_name”:”weight”,”subgroups”:[{“group_id”:”34″,”group_name”:”<=15?","subgroups":0},{"group_id":"35","group_name":"<=25?","subgroups":0},{"group_id":"36","group_name":"<=50?","subgroups":0},{"group_id":"37","group_name":"<=100?","subgroups":0}]},{"group_id":"8","group_name":"dimensions","subgroups":[{"group_id":"38","group_name":"SR10","subgroups":0},{"group_id":"39","group_name":"SR20","subgroups":0},{"group_id":"40","group_name":"SR31\/32","subgroups":0},{"group_id":"41","group_name":"SR40","subgroups":0},{"group_id":"42","group_name":"SR41\/42","subgroups":0}]}] 我需要使用Jquery将此JSON设置为有效的HTML表结构,如下所示,我该如何实现它 这就是我到目前为止所尝试过的..我对递归循环部分感到震惊 $(document).ready(function(){ var jsondata = jQuery.parseJSON($.trim($(‘#groupdata’).html())); //the above JSON var str = ”; str +=”; str +=”; for(j=0;j<jsondata.length;j++){ str +='’+jsondata[j][‘group_name’]+”; // here i want to call the same loop again if it has subgroups } str +=’ ‘; str+=”; $(‘#container’).html(str); });

循环每次迭代只发生在jQuery延迟后/然后可能没有递归?

我想在循环中调用jQuery延迟函数,但每次迭代都应该等待前一次迭代使用延迟when() function (num_of_iterations) { var arr = []; for (var i = 1; i < num_of_iterations; ++i) { arr.push($.getJSON( … 1 … )); arr.push($.getJSON( … 2 … )); … $.when.apply($, arr).then(function() { // somehow do the next iter. only now that all the asynch getJSON's are done }); } return; } 现在当然,因为getJSON是异步的,所有迭代中的所有请求实际上都会在调用任何时间之前发送。 我意识到我可以通过调用一个包含我在这里所拥有的函数的递归来实现这一点。 但我想知道是否有一些我缺少使用的技术而不是递归。 我总是担心在将来某个时候使用堆栈的递归。 […]

如何在jQuery中编写一个循环,等待每个函数在继续循环之前完成

如果这是显而易见的,请原谅我。 我在页面上有一个未知数量的元素,我需要一次循环一个并执行操作。 但是,我需要循环暂停,直到元素上使用的函数完成,然后继续下一次迭代。 我尝试在$ .each循环中执行此操作,但它快速启动命令并完成而无需等待它们完成。 有任何想法吗? $(‘elem’).each(function(){ $(this).fadeIn().wait(5000).fadeOut(); }); 这就是我所拥有的,非常简单。 我从这里得到了wait()函数: jquery cookbook site 。 问题是,循环不等待 – 实际命令按预期工作,只是它们一次全部消失。 任何帮助表示感谢,谢谢。 编辑:执行此操作后,我可能希望再次执行循环,以便elems列表将按顺序再次淡入/淡出 EDIT2:从那以后得到了1.4.2 jQuery lib,使用的是1.3.2,因此自定义了wait()函数。 现在使用lobstrosity提到的delay()。 管理从他的答案拼凑一些接近我需要的东西,谢谢lobstrosity :)。

我怎么循环.next()?

我有3个具有相同类的div,我在点击时将“选择”类添加到NEXT DIV并从之前的类中删除它,它工作正常但我想循环它 目前它从1 – > 2 – > 3,我希望它循环,3 – > 1,请帮助… HTML ONE TWO THREE CLICK CSS .selected{background:red} JS $(‘#button’).click(function(){ $(‘.section.selected’).removeClass(‘selected’).next(‘.section’).addClass(‘selected’); }); JS Fiddle Link: http : //jsfiddle.net/madhuri2987/KK66g/2/

jQuery在div中一次循环一个p标签的.fadeIn和.fadeOut

下面的代码在一个推荐中成功淡出6秒,等待3秒,然后淡出并继续下一个。 一旦达到第三个见证,它就会跳回到第一个。 这正是我想要的,但在我的实际网站上,我有三个以上的推荐,并且将来可能会增加更多。 每次添加新推荐书时,我都不想再返回并添加新function。 我尝试了一段时间,使用“this”和.next()使其工作但失败了。 我希望有人可以通过循环它并使其移动到容器中的下一个p标签而不必每次调用新函数来提高效率。 感谢任何帮助,谢谢。 注意:我知道有类似的问题,但没有一个是完全相同的,答案是低于标准。 #tml-container p { display: none; } Testimonial 1 Testimonial 2 Testimonial 3 $(document).ready(function() { function doFade() { $(“#one”).fadeIn(6000,function() { $(“#one”).fadeOut(6000).delay(3000); setTimeout(fadeTwo,6000); }); } function fadeTwo() { $(“#two”).fadeIn(6000,function() { $(“#two”).fadeOut(6000).delay(3000); setTimeout(fadeThree,6000); }); } function fadeThree() { $(“#three”).fadeIn(4000,function() { $(“#three”).fadeOut(6000).delay(3000); setTimeout(doFade,6000); }); } doFade(); });

循环遍历变量中的元素

如何循环存储在’ul’标签的变量中的HTML? 这是我到目前为止,但警报()甚至没有触发,我有点迷失… var data = ‘HTML’; $(‘ul’, data).each(function(i,v) { var theTag = v.tagName; var theElement = $(v); var theValue = theElement.html(); alert(theTag+’\n’+theElement+’\n’+theValue); }); 谢谢

如何循环jquery div动画?

我正在尝试使用无限循环实现一个jQuery函数来动画div。 我无法弄明白该怎么做。 这是我的代码: $(document).ready(function() { $(‘#divers’).animate({‘margin-top’:’90px’},6000).animate({‘margin-top’:’40px’},6000); });