0


我正在开发一个包含大量图像的 html 网站,为了减少加载时间,我将在用户使用 javascript 单击封面图像时加载隐藏图像,然后将其插入引导轮播。

我试图做到,但没有成功。图片未加载。有什么帮助吗?
这是我的最后一个代码:

HTML

<li>
  <a href="#" onclick="imgFilter('.ar-img')">
    <img src="images/AR/01.jpg" alt="">
  </a>
  <div class="accordion carousel-inner">
    <div class="item active">
      <img src="images/AR/01.jpg" alt="slide">
    </div>
    <div class="item">
      <img class="ar-img" src="" data-src="images/AR/02.jpg" alt="slide">
    </div>
    <div class="item">
      <img class="ar-img" src="" data-src="images/AR/03.jpg" alt="slide">
    </div>
  </div>
</li>

<li>
  <a href="#" onclick="imgFilter('.br-img')">
    <img src="images/BR/01.jpg" alt="">
  </a>
  <div class="accordion carousel-inner">
    <div class="item active">
      <img src="images/BR/01.jpg" alt="slide">
    </div>
    <div class="item">
      <img class="br-img" src="" data-src="images/BR/02.jpg" alt="slide">
    </div>
    <div class="item">
      <img class="br-img" src="" data-src="images/BR/03.jpg" alt="slide">
    </div>
  </div>
</li>

JS

function imgFilter(id) {
    var imgId = $(id);

    $("imgId").each(function(i) {
        $("this").setAttribute('src', $("this").getAttribute('data-src'));
    });
};
4

1 回答 1

0

类似的东西:

$(".item img").each(function(i) {
    $("this").setAttribute('src', $("this").getAttribute('data-src'));
}

但是我会改用jQuery插件lazyload(http://www.appelsiini.net/projects/lazyload)。


假设你有像这样的css:

.item{
  width:200px;
  height:auto;
}
.item img{
  width:100%;
  height:auto;
}
于 2015-10-16T12:02:20.343 回答