gpt4 book ai didi

javascript - .after() 上的 jQuery 错误

转载 作者:行者123 更新时间:2023-11-30 12:53:27 25 4
gpt4 key购买 nike

我有一段非常简单的 jQuery 代码 (jQuery 1.7.1)。尽管出现以下错误,但代码未执行。

Uncaught HierarchyRequestError: A Node was inserted somewhere it doesn't belong.

导致该错误的代码如下:

counter = 0;
jQuery('h3').each(function(){
counter += 1;
div = '<div class="' + counter + '"></div>';
jQuery(this).after(div);
jQuery(this).nextUntil('h3').appendTo('div.' + counter);
});

由于某种原因,jQuery(this).after(div); 导致了一个问题。它与我添加到 div 的类有关(特别是类,而不是我设置为类的变量)。起初我使用 append 而不是 after,但这并没有达到预期的效果。但是,append 没有报错。

谁能解释为什么不允许我在 after 函数中添加类,如果可能的话,给我一个解决这个问题的好选择?

最佳答案

您正在尝试将 div 插入自身。事实上,jQuery(this).after(div) 结果是:

<h3></h3>
<div class="1"></div>
<h3></h3>

那么,jQuery(this).nextUntil('h3') 包含 div 本身。以下是避免这种情况的方法:

jQuery(this).nextUntil('h3')
.not('div.' + counter)
.appendTo('div.' + counter);

这与您的问题无关,但我想知道以数字开头的 CSS 类是否有效:https://stackoverflow.com/a/449000/1636522 .

关于javascript - .after() 上的 jQuery 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20145049/

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