我需要一个在加载DOM时启动的函数。
在我的HTML页面中有几个空的图像标签,我希望在加载所有内容时将图像名称添加到src-property中以获得类似
的内容<img src="blank.jpg">.
祝福 克里斯
答案 0 :(得分:8)
构建<img src="">
无效。永远不要使用它。
它无效,因为空网址表示当前网页的网址。但是当前页面是HTML文档,而不是图像。浏览器可以对当前页面进行另一次查询,并尝试将其用作图像(请参阅this page)。
答案 1 :(得分:6)
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属性,因此我将代码更改为触发文档的加载事件,该事件在图像开始加载之前发生。
答案 2 :(得分:3)
答案 3 :(得分:2)
使用jQuery,这会在页面加载时将所有带有空白src属性的img元素的src属性设置为“blank.jpg”。
$.ready(function() {
$("img[src='']").attr("src", "blank.jpg");
});
答案 4 :(得分:0)
您可以使用此脚本。
# 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”替换上一张图像。
答案 5 :(得分:0)
使用JQuery,您可以使用以下代码简单地解决您的问题。
$(function(){
$("img[src='']").attr("src", "blank.jpg");
});