2015-07-21 22 views
0

我每次从jQuery Carousel插件调用switchSlide()方法时都会发一个自定义事件switchSlideEvent,但没有任何文档。jQuery惰性加载XT - 在自定义事件中强制加载图像

我使用延迟加载XT(https://github.com/ressio/lazy-load-xt),以延迟加载图片,但该插件只能在下列事件loadorientationchangeresizescroll加载图像。

延迟加载XT初始化像这样:

$.extend($.lazyLoadXT, { 
    selector: 'img[data-original]', 
    srcAttr: 'data-original', 
    edgeY: 200, 
    updateEvent: 'load orientationchange resize scroll switchSlideEvent' 
}); 

我尝试了以下解决方案,但都没有成功:

  1. 通行证switchSlideEvent的延迟加载XT updateEvent选项(见上)
  2. 手动重新初始化惰性负载XT .on('switchSlideEvent')像这样:

我收到了console.log事件,但旋转木马图像“滑入”视图不会加载,直到我滚动页面。

$(document).ready(function(){ 
    $(document).on('switchSlideEvent', function(){ 
    console.log("custom event fired"); 
    $(window).lazyLoadXT(); 
    }); 
}); 

问题

我怎样才能迫使延迟加载XT时switchSlideEvent火灾加载新的图片吗?

任何帮助,非常感谢。

谢谢!

回答

1

在传送带插件的switchSlide()方法中,有animate方法和complete回调函数。我添加了另一个事件$.event.trigger("switchSlideAnimateEvent")complete回调函数中,并调整好自己的初始化代码如下:

$.extend($.lazyLoadXT, { 
selector: 'img[data-original]', 
srcAttr: 'data-original', 
edgeY: 200, 
updateEvent: 'load orientationchange resize scroll switchSlideEvent switchSlideAnimateEvent' 
}); 

我删除了$(document).on(switchSlideEvent)处理完全,因为它是没有必要和图片已正常加载。

干杯。