【问题标题】:jQuery or Javascript Solution Remove Specific Tag but leave the restjQuery 或 Javascript 解决方案删除特定标记但保留其余标记
【发布时间】:2011-01-05 06:23:50
【问题描述】:

我有一个看起来像这样的 div 结构...

<div class="gallery_lightview">
<div id="lg_image">
<a href="http://www.website.com/?iframe=true&width=100%&height=100%" rel="prettyPhoto[iframes]" class="lightview_main" title="TITLE HERE">
<img class="alignnone" src="HEADER.jpg" alt="" />
</a>
</div>
</div>

我想要做的是删除仅在 div 类“gallery_lightview”之间显示的&lt;a&gt; 标签并留下&lt;img&gt; 标签。因此,一旦将其全部剥离,它将看起来像...

<div class="gallery_lightview">
<div id="lg_image">
<img class="alignnone" src="HEADER.jpg" alt="" />
</div>
</div>

基本上使它成为不可点击的图像。这可能吗?

【问题讨论】:

    标签: php javascript jquery html wordpress


    【解决方案1】:
    $('.gallery_lightview').find('img').unwrap();
    

    查找具有类 gallery_lightview 的元素,查找其所有属于“img”元素的子元素(无论嵌套多深),然后删除它们的每个直接父元素(在本例中为“a”标签)。

    【讨论】:

    • $('.gallery_lightview a>img').unwrap();也可以工作,并确保 标签真的在 里面
    【解决方案2】:

    $('img').insertAfter('a'); 获取并在'img'之后插入元素'a'

    $('a').remove(); 删除元素'a'

    【讨论】:

      【解决方案3】:

      抱歉,只是想多了。它实际上是在移动网站上进行的。所以...我选择不使用 jQuery(减少负载,因为我不需要大部分 jQuery 功能)。

      无论如何,这可以在自包含的 Javascript 中完成,而不是在 &lt;head&gt; 中?

      我想它会在 Wordpress "the_content" 调用之前出现,因为这是 div 所在的位置。有什么帮助吗?

      很抱歉给您带来了困惑。

      【讨论】:

        猜你喜欢
        • 2011-05-13
        • 2015-01-22
        • 1970-01-01
        • 2021-12-31
        • 1970-01-01
        • 2019-03-30
        • 2012-03-15
        • 2012-04-12
        • 2017-02-05
        相关资源
        最近更新 更多