gpt4 book ai didi

javascript - 需要 Jquery 帮助 - 无限循环?

转载 作者:行者123 更新时间:2023-11-29 18:36:26 25 4
gpt4 key购买 nike

我对这段代码有疑问:

    var par = [];
$('a[name]').each(function() {
if (($(this).attr('name')).indexOf("searchword") == -1) {
par.push($(this).attr('name'));
$('.content').empty();
for (var i = 0; i < par.length; i++) {
$(".content").append('<a id="par" href="#' + par[i] + '">' + par[i] + '</a><br />');
}
}
});

导致ie和firefox弹出警告窗口“停止运行此脚本”。但只有当页面上有非常大量的数据时才会发生这种情况。有什么解决办法吗?

最佳答案

您的代码应如下所示:

var par = [];
$('a[name]').each(function() {
if (($(this).attr('name')).indexOf("searchword") == -1) {
par.push($(this).attr('name'));
}
});
$('.content').empty();
for (var i = 0; i < par.length; i++) {
$(".content").append('<a id="par" href="#' + par[i] + '">' + par[i] + '</a><br />');
}

没有理由将第二个循环置于第一个循环内 - 这只会导致大量不必要的工作。

您可以通过删除 par 数组和第二个循环并仅在第一个循环内创建内容来简化此代码:

$('.content').empty();
$('a[name]').each(function() {
var name = $(this).attr('name');
if (name.indexOf("searchword") == -1) {
$(".content").append('<a id="par" href="#' + name + '">' + name + '</a><br />');
}
});

关于javascript - 需要 Jquery 帮助 - 无限循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2711919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com