繁体   English   中英

如何替换所有空的<img src="">在 dom 上加载了 JavaScript 的页面上?

[英]How to replace all empty <img src=""> on a page with JavaScript on dom loaded?

我需要一个 function,它在加载 DOM 时启动。

在我的 HTML 页面中有几个空的图像标签,比如我想在加载所有内容时将图像名称添加到 src-property 中以获得类似的东西

<img src="blank.jpg">.

最良好的祝愿克里斯

构造<img src="">无效。 永远不要使用它。

它无效,因为空网址表示当前网页的网址。 但是当前页面是HTML文档,而不是图像。 浏览器可以对当前页面进行另一次查询,并尝试将其用作图像(请参阅本页 )。

function replaceSrc()
{

    var images = document.getElementsByTagName('img');

    for(var i = 0; i < images.length; i++)
    {
        var img = images[i];

        if(img.src.length == 0)
        {
            img.src = 'blank.jpg';
        }
    }
}


window.onload = replaceSrc;

或者,如果要为事件添加多个处理程序:

document.addEventListener('load', replaceSrc, false) //W3C
document.attachEvent('onload', replaceSrc); //IE

用jQuery

   $(document)
     .ready(function() { $('img')
                             .filter(function(){ return this.src.length == 0 })
                                 .each(function () { this.src = 'blank.jpg'})  });

编辑:

我意识到您可能希望在图像加载之前设置src属性,因此我将代码更改为触发文档的加载事件,该事件在图像开始加载之前发生。

使用jQuery 这很简单。

$('img').attr('src','new-image-name.jpg')

这会将每个img标记的src属性设置为'new-image-name.jpg'。

使用jQuery ,这将在页面加载时将所有带有空白src属性的img元素的src属性设置为“blank.jpg”。

$.ready(function() {
  $("img[src='']").attr("src", "blank.jpg");
});

您可以使用此脚本。

# Script AddImage.txt
var string pagefile, image, html
# Read in the page file.
cat $pagefile > $html
# Replace all instances of "<img src="blank.jpg">" with the specified image.
while ( { sen -r -c "^<img src=&\>^" $html } > 0 )
    sal -r -c "^<img src=&\>^" ("<img src=\""+$image+"\">") $html > null
# Write page back.
echo $html > { echo $pagefile }

脚本是biterscripting。 将脚本保存在文件“C:/Scripts/AddImage.txt”中,使用此命令运行它。

script "C:/Scripts/AddImage.txt" pagefile("/path/to/page.html") image("blank.jpg")

它将用“blank.jpg”替换之前的图像。

使用JQuery,您可以使用以下代码简单地解决您的问题。

$(function(){
   $("img[src='']").attr("src", "blank.jpg");
});

使用 dom 操作替换 API 数据中的 null 图像

const images = document.getElementsByTagName('img');
        for(const img of images){
            const src = img.getAttribute('src');
            if(src === "null" && strGender === "Male"){
                img.src = "img/placeholder-male.jpg";
            } else if(src === "null" && strGender === "Female"){
                img.src = "img/placeholder-female.jpg"
            }
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM