【问题标题】:remove img link if not target=blank如果不是 target=blank,则删除 img 链接
【发布时间】:2015-06-22 11:50:26
【问题描述】:

我的网站上有图片,有些有 target="_blank" 属性,有些没有。

这里有 2 个例子:

目标=_blank:

<a href="/mission.jpg" target="_blank"><img class="alignnone size-medium wp-image-1270" src="/mission-300x289.jpg" alt="mission" width="300" height="289" /></a>

没有目标=_blank:

<a href="/mission_1.jpg"><img class="alignnone size-medium wp-image-1271" src="/mission-300x289.jpg" alt="mission_1" width="300" height="289" /></a>

我正在使用此代码从我的图片中删除链接:

$("a:has(img)").each(function() { $(this).replaceWith($(this).children()); })

不,我想添加一个条件以仅在图像没有 target=_blank 属性时删除链接。

有人可以帮我吗?

非常感谢您的帮助;

【问题讨论】:

    标签: jquery href target


    【解决方案1】:

    试试

    $("a:not([target='_blank']) img").unwrap();
    

    $("a[target !='_blank'] img").unwrap();
    

    Fiddle

    【讨论】:

      【解决方案2】:

      使用这个:

           $('a:not([target="_blank"]):has(img)').each(function() { 
               $(this).replaceWith($(this).children()); 
          })
      

      working fiddle

      【讨论】:

        【解决方案3】:
          $("a:has(img)").each(function() { 
            var x=$(this).attr('target');
        
            if(x!="_blank"){
              //do your stuff here
            $(this).remove();
            $(this).replaceWith($(this).children()); 
            }
        })
        

        JSFIDDLE DEMO

        【讨论】:

          【解决方案4】:

          你可以使用

          $("a[target!='_blank']:has(img)").each(function() {
            $(this).replaceWith($(this).children());
          })
          

          jsfiddle

          【讨论】:

            【解决方案5】:

            这是另一种方式,专门针对与此问题相关的多个浏览器进行检查。

            jQuery hasAttr checking to see if there is an attribute on an element

            $('a:has(img)').each(function() {
                if (!!$(this).attr('target')) {
                    (this).unwrap();
                }
            });
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2018-05-01
              • 1970-01-01
              • 2016-06-12
              • 2013-11-21
              • 2011-02-17
              • 2022-12-14
              相关资源
              最近更新 更多