不要用javascript加载图像

Do not load images in javascript

本文关键字:加载 图像 javascript      更新时间:2023-09-26

我建立了一个网站,我想询问用户每次访问该网站时,他是否想要显示图像。如果没有,我不想加载它们并显示没有任何img标签的页面

我试过了,但这没有用,因为页面将加载

function load_img () {
if (!confirm("Do you want to load the images on your site?")) {
    var images = document.getElementsByTagName("img");
    var l = images.length;
    for (var i=0; i<l; i++) {
        images[0].parentNode.removeChild(images[0]);
    }
}
}

我需要一些在页面加载时不加载任何img标记的代码,而不是在页面加载并显示后隐藏或删除图像的代码

有人能帮我使用这个javascript代码吗

感谢

您可以看看jQuery的lazylod插件。这个插件所做的是当图像位于页面的可见区域时加载图像。

他们的想法是将图像的原始URL放在data-original属性中,并在src属性中放一些小图像,例如1x1透明gif,如下所示:

<img data-original=“img/example.jpg” src=“img/grey.gif” />

然后只要更换CCD_ 3,您就可以随时加载所有图像。

这是一个简单的javascript代码,您可以尝试:

window.onload = function() {
    if( confirm('Images?') ) {
        var img = document.getElementsByTagName('img');
        for(i in img) {
            var original = img[i].getAttribute('data-original');
            if( original.length ) {
                img[i].setAttribute('src', original);
            }
        }
    }
}

您可以尝试jquery:$("img").remove();

最好从服务器端解决这个问题!

使起始页包含一个链接,链接到包含图像和不包含图像的页面版本。您可以编写一个服务器端脚本(PHP?)来显示或隐藏图像。简单地删除图像可能会破坏页面设计。同样,删除html图像标签也不能起到作用。背景图像呢,一些在css文件中。。。

如果你想用javascript在客户端完成这项工作,你必须删除所有图像,并用javascript手动添加它们。

使用jQuery可以执行以下操作:

if (confirm('Hide images?'))
{
    $('img').remove();
}

如果没有jQuery,您必须使用getElemtentsByTag和一个循环。