gpt4 book ai didi

javascript - 使用 jQuery 在第 n 个段落之后移动元素

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:58:20 25 4
gpt4 key购买 nike

我想移动一个div #inject从原来的位置到第 7 段之后 #mw-content-text .

到目前为止我有这个$('#inject').insertAfter('#mw-content-text > p:nth-child(7)');这正在移动 #inject div 到内部第 7 个元素之后 #mw-content-text仅当第 7 个元素是 <p> 时,如果它有所不同,它不会做任何事情。

例如,如果文章具有以下结构(因为第 7 个元素是 <p>)

<div id="mw-content-text">
<table></table>
<h2></h2>
<p></p>
<p></p>
<p></p>
<h2></h2>
<p></p>
/* div #inject is injected here */
<p></p>
<h2></h2>
...

另一方面,如果文章看起来像这样(如果第 7 个元素是 <h2>),那么它什么都不做

<div id="mw-content-text">
<table></table>
<h2></h2>
<p></p>
<p></p>
<h2></h2>
<p></p>
<h2></h2>
<p></p>
<p></p>
<h2></h2>
<p></p>
...

有人能看出我做错了什么吗?引用第 7 个 <p> 的正确方法是什么? #mv-content-text 中的元素而不是第 7 个元素,只有当它是 <p> 时?

最佳答案

使用 p:nth-of-type(7)而不是 p:nth-child(7) .

详细信息:

  • p:nth-child(7)表示如果元素是<p>,请给我该元素元素,如果它是其父元素的第 7 个 th 子元素
  • p:nth-of-type(7)表示给我第 7 个 <p>元素

关于javascript - 使用 jQuery 在第 n 个段落之后移动元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34364729/

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