如何在jQuery .each循环中打开15个链接后终止执行?
限制打开链接数量的解决方案
可以通过两种方式实现打开15个链接后停止操作:
方法一:在循环中判断索引终止遍历
利用each循环的索引参数,当索引达到15时终止循环(索引从0开始,第15个元素的索引为14):
$(document).on('click', '.openall', function() { $(".hasreviews a").each(function(index) { if (index >= 15) { return false; // 终止整个each循环 } var url = $(this).text(); window.open(url, '_blank'); }) });
方法二:先截取前15个元素再遍历
直接用slice()方法筛选出前15个目标元素,再遍历打开链接,逻辑更简洁:
$(document).on('click', '.openall', function() { $(".hasreviews a").slice(0, 15).each(function() { var url = $(this).text(); window.open(url, '_blank'); }) });
注意:部分浏览器会对弹窗数量做限制,这是浏览器的安全机制,控制在15个链接通常不会触发严格限制,但如果遇到弹窗被拦截的情况,需要用户手动允许弹窗权限。
内容的提问来源于stack exchange,提问作者penguin_P
相关产品推荐
相关产品推荐

