【问题标题】:How to Find Img Tags Having src null. and deleting it如何查找 src 为空的 Img 标签。并删除它
【发布时间】:2010-07-27 12:28:22
【问题描述】:

当 Img 有 src="" 时,我需要删除或隐藏 Img 标签或其父标签。

我有一个脚本,但它不工作..

window.onload=function(){
   var imgs = document.getElementsByTagName("img");
   for(var i = 0; i < imgs.length; i++)
    {
        var img = imgs[i];
        if(img.src==""){
         img.parentNode.removeChild(img);
        }
    }
}

它没有找到具有 scr="" 的 img。而在 IE 和 Safari 中显示十字符号(红色)。

【问题讨论】:

    标签: javascript image src


    【解决方案1】:

    您可以使用 jquery 添加功能,使此跨浏览器兼容而不会变得疯狂。你的代码最终看起来像

    $(document).ready(function() {
        $("img[src='']").remove();
    });
    

    【讨论】:

    • 不是被否决的那个,但是虽然 jQuery 可能是 javascript,但 javascript 不是 jQuery。
    • 现在每个人都在使用 jQuery。并不是说我自己不喜欢 jQuery,但这表明 JS 的实现方式(跨浏览器兼容!?)和客户端 JS 的功能集都存在严重问题。太多简单的任务需要 24,000 个字符(猜测)的库。将所有这些功能推送到客户端 JS 中的工作量与他们现在正在做的所有 JS 解释器优化一样多,但会导致更少的流量......
    • 感谢回复..我需要把它放在准备好的活动中..我是对的
    • 所以我投了反对票,因为 javascript 在浏览器中的实现很糟糕?
    • 你已经选择了一个答案,那其他人没有回答这个问题吗?然后你需要取消选中它,否则我们不知道继续帮助你。
    【解决方案2】:

    您可以为此使用 jQuery :)

    $(document).ready(function(){
        $("img").each(function(){
            if($(this).attr("src") == null || $(this).attr("src") == '')
             {
                 $(this).remove();
              }
        });
    });
    

    解决方法是将有新闻的div容器的样式设置为display:none;然后一旦执行每个循环,您将 div 设置为可见。

    这里有一个代码模型..

     //html (iframe content)
     <div id="newsContainer" style="display:none;">
     </div>
    
    $(document).ready(function(){
        $("img").each(function(){
            if($(this).attr("src") == null || $(this).attr("src") == '')
             {
                 $(this).remove();
              }
        });
        $("#newsContainer").show();
     });
    

    【讨论】:

    • 感谢回复.. 我正在实现这个
    • 嘿大卫..谢谢你的回复。我为我工作。我会将此标记为答案。但我需要更具体的答案。我有一个 .asp 并且我在其中有 iframe,这个 iframe 填充了新闻和图像。 iframe 使用的是 html 页面。我把这段代码放在html页面上。但场景首先是 IE 显示红色十字符号,并且在所有页面都加载后,它会删除 img 标签。我在 标签 onload 事件上应用了我的脚本,但它没有工作。对此有任何帮助。
    猜你喜欢
    • 1970-01-01
    • 2021-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多