javascript - 延迟加载 FlexSlider

标签 javascript loading lazy-evaluation flexslider

我的 Javascript 技能充其量只是初学者,但我尝试实现 here 中的延迟加载 flexslider 解决方案。 slider 和加载工作正常,但是当 slider 循环一次时,我收到控制台错误:

“未捕获类型错误:无法调用未定义的方法‘removeAttr’”

我的 JS 坐在头部:

JS

  <script type="text/javascript" charset="utf-8">
     $(window).load(function() {
        $('.projcontainer').flexslider({
           slideshow: false,
           after: function(slider) {
              var slides = slider.slides,
                      index = slider.animatingTo,
                      $slide = $(slides[index]),
                      $img = $slide.find('img[data-src]');
              if ($img) {
                 $img.attr("src", $img.attr('data-src')).removeAttr("data-src");
              }
           }
        });
     });
  </script>

HTML:

<li>
   <img class="lazy" src="loading.gif" data-src="myimage.png"/>
</li>

由于知识有限,我知道我需要完成“else if”语句,但这对我来说并没有发生。任何帮助将不胜感激。

最佳答案

if ($img) 更改为 if ($img.length)。你的 if 条件总是会通过,因为 $img 永远不会为 null(它是一个 jQuery 对象)。

关于javascript - 延迟加载 FlexSlider,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21174674/

相关文章:

javascript - jQuery 无法正确验证 RadioButtonList?

android - 如何显示内部存储中的位图?

python - 在 Flask 中执行耗时函数时显示 ‘loading’ 消息

c# - 如何创建一个 IEnumerable 以在单个语句中延迟获取所有 X

F# PSeq.iter 似乎没有使用所有内核

javascript - Ajax生成的内容,onclick时无法隐藏

javascript - 为什么我的 webpack 配置的 es6 版本会报错,而 es5 版本不会?

javascript - 选择缩略图时打开图库

javascript - 动态加载 Javascript 对象的性能问题

performance - 这是 Scala 2.9.1 延迟实现中的错误还是只是反编译的产物