非常抱歉,我给出了错误的答案。实际上,`insertAdjacentElement()`是一个HTML元素对象的方法,并不适用于HTMLCollection对象。对于HTMLCollection对象,我们需要遍历每个元素并分别添加`hr`元素。
以下是修改后的代码:
- const qujianList = document.getElementsByClassName("qujian");
- for (let i = 0; i < qujianList.length; i++) {
- const qujian = qujianList[i];
- const hrExists = qujian.nextElementSibling && qujian.nextElementSibling.tagName === 'HR';
- if (!hrExists) {
- const hr = document.createElement("hr");
- qujian.parentNode.insertBefore(hr, qujian.nextSibling);
- }
- }
复制代码
这段代码会为每个类名为`qujian`的元素后面插入一个分割线元素`hr`。请尝试一下这个修改后的代码,并且看看是否解决了问题。对于每个`qujian`元素,我们检查它的下一个兄弟节点是否已经是一个`hr`元素,如果不是,则通过`insertBefore()`方法在该兄弟节点之前插入新的`hr`元素。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。