不要在隐藏元素中加载图像

时间:2015-07-23 15:12:01

标签: javascript jquery html css

this不重复,因为它也使用了document.ready方法,但显然无效。

我想避免浏览器加载嵌套在隐藏<img>元素中的图片(<div>)。

所以我尝试了这个,但是javascript被执行得太晚了,浏览器已经开始下载不应该的图像了。

  $(document).ready(function() {
    $('div').not(":visible").each(function () {
       $(this).find('img').each(function() {
         $(this).attr("src","");
       });
    });
  });

有一个很好的JavaScript解决方案吗? 或者我是否必须使用<img srctmp="...."/>,然后通过javascript将srctmp替换为src以获取那些未嵌套在隐藏<div>内的图片?

1 个答案:

答案 0 :(得分:5)

您可以使用data属性代替src,浏览器仅从src加载图片,因此您可以为每张图片的data-src开头,然后添加{ {1}}仅限于可见的。

HTML:

src

JS:

  <img data-src="path/to/image.jpg" />