jquery - 如何从多个 HTML 元素的特定起点和终点使用 jQuery .wrap()?

标签 jquery html

我想使用 jQuery .wrap() 函数从特定的起点和终点将 div 包裹在一系列 html 标签周围。例如,我的 HTML 文档现在如下所示:

我当前的 HTML 结构:

<div class="single-post">
    <img src="" />
    <p></p>
    <p></p>
    <blockquote></blockquote>
    <p></p>
</div>

我想在上面的这些元素周围包裹一个带有“new”类的 div:

<p></p>
<p></p>
<blockquote></blockquote>
<p></p>

实际上,我的最终结果应该是这样的:

<div class="single-post">
    <img src="" />
    <div class="new">
        <p></p>
        <p></p>
        <blockquote></blockquote>
        <p></p>
    </div>
</div>

最佳答案

好吧,假设 img 始终是独行侠,你可以这样做 this :

jQuery:

$('.single-post > img').siblings().wrapAll('<div class="new" />');

您还可以执行类似 this 的操作:

$('.single-post').children(':not(.exclude)').wrapAll('<div class="new" />');

关于jquery - 如何从多个 HTML 元素的特定起点和终点使用 jQuery .wrap()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14453545/

相关文章:

javascript - 如何从 jQuery 函数内部的外部获取变量?

javascript - jQuery点击标签打开和关闭

php - Wordpress 主题中的自定义模板样式

html - 如何在不使用javascript的情况下设置默认图像宽度的1/2

javascript - 数据表中的按钮和分页显示不正确

javascript - 等待 Ajax 调用 DOM 操作完成

javascript - 单击另一个元素时恢复以前的值

javascript - 有没有办法滚动到 URI 片段而不将它们添加到历史记录中?

html - 在没有 <br> 的情况下将表单元素放在新行上

html - 使用 "display:table/table-cell"时出现神秘空白