Javascript jQuery-targeting<;a>;其HREF指向图像的元素

Javascript jQuery-targeting<;a>;其HREF指向图像的元素,javascript,jquery,html,Javascript,Jquery,Html,如何将所有您可以在属性选择器的帮助下执行类似操作 $('a[href$=jpg],a[href$=png]').remove(); 您可以在属性选择器的帮助下执行类似操作 $('a[href$=jpg],a[href$=png]').remove(); 编辑您可以通过此功能实现这一点。每个逗号分隔的选择器都以文件类型为目标 var imageLinks = $('a[href*=".jpg"], a[href*=".jpeg"], a[href*=".png"], a[href*=".g

如何将所有
您可以在属性选择器的帮助下执行类似操作

$('a[href$=jpg],a[href$=png]').remove();


您可以在属性选择器的帮助下执行类似操作

$('a[href$=jpg],a[href$=png]').remove();


编辑您可以通过此功能实现这一点。每个逗号分隔的选择器都以文件类型为目标

var imageLinks = $('a[href*=".jpg"], a[href*=".jpeg"], a[href*=".png"], a[href*=".gif"]');

您应该阅读以下内容:

经过编辑您可以通过此功能实现这一点。每个逗号分隔的选择器都以文件类型为目标

var imageLinks = $('a[href*=".jpg"], a[href*=".jpeg"], a[href*=".png"], a[href*=".gif"]');
您应该阅读以下内容:

Regex解决方案:

$("a").each(function() {
    if ( $(this).attr("href").match(/\.(png|jpg|jpeg|gif)(?:\?(.*))?$/) ) {;
        $(this).remove();
    }
})
正则表达式解决方案:

$("a").each(function() {
    if ( $(this).attr("href").match(/\.(png|jpg|jpeg|gif)(?:\?(.*))?$/) ) {;
        $(this).remove();
    }
})

如果您想要去除包含“href”属性的
元素,这些属性包含看起来像普通图像文件名的路径,那么我认为您必须使用
.filter()
和正则表达式

$('a').filter(function() {
  return /\.(?:jpg|png|gif)(?:\?.*)?$/i.test(this.href);
}).remove();

如果您想要去除包含“href”属性的
元素,这些属性包含看起来像普通图像文件名的路径,那么我认为您必须使用
.filter()
和正则表达式

$('a').filter(function() {
  return /\.(?:jpg|png|gif)(?:\?.*)?$/i.test(this.href);
}).remove();

这是否适用于以下情况<代码>在这种情况下使用
$('a[href*=jpg],a[href*=png]')。删除()@RichardRodriguez否,并且它不适用于响应图像但不包含任何看起来像公共图像文件扩展名的URL。这不是一个你可以在客户端上100%可靠地解决的问题。这能正确处理以下问题吗<代码>
@Pointy:我不关心这些案例,我完全清楚这一点。这对以下情况也有效吗<代码>在这种情况下使用
$('a[href*=jpg],a[href*=png]')。删除()@RichardRodriguez否,并且它不适用于响应图像但不包含任何看起来像公共图像文件扩展名的URL。这不是一个你可以在客户端上100%可靠地解决的问题。这能正确处理以下问题吗
@Pointy:我不关心这些情况,我完全知道。这对
不起作用这对
不起作用
怎么样?@user3362707我认为“file.jpg?rev=2”应该包含在要删除的
元素集中。那么
呢?@user3362707我认为“file.jpg?rev=2”应包含在要删除的
元素集中。