好奇的一个。我想在background-image: url('')
我尝试了以下内容:
$('.bg-image-card').each(function(){
if ($(this).css('background-image', "url('')") ){
$(this).remove();
};
});
它有效 - 但删除所有带有背景图像的div。我之所以使用它只是为了删除那些url('') - 任何指针都会很棒!
即,
答案 0 :(得分:2)
.css()
不会返回Boolean
值; .css()
返回一个jQuery对象,它将评估" truthy"。
当一个空字符串传递给CSS url()
函数时,url()
中的值将替换为location.href
,这似乎是一个能够在Chromium和Firefox上重现的错误
如果url()的值是空字符串(如url("")或url()),则url必须解析为无效资源 (类似于url about:invalid确实如此)。
$("div").each(function() {
if (window.getComputedStyle(this).backgroundImage === `url("${location.href}")`) {
$(this).remove()
}
})

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="background-image:url('')">div</div>
<div>div</div>
&#13;
答案 1 :(得分:0)
我的假设错了。
<击> 您可以使用:
done, draft, partially_available, etc.
击> <击> 撞击>
但是,您可以检查背景图片的宽度或高度,如果宽度或高度为0,则将其删除:
$('.bg-image-card').each(function(){
if ($(this).css('background-image') == "url('')" ){
$(this).remove();
};
});