FlexSlider LazyLoading

[email protected]

by Ryan Brackett

HTML

<script src="http://flexslider.woothemes.com/js/jquery.flexslider.js"></script>
<link rel="stylesheet" href="http://flexslider.woothemes.com/css/flexslider.css">
<h1>Lazy Loading in FlexSlider</h1>

<a href="mailto:[email protected]">[email protected]</a>

<br/>
<br/>
<div class="flexslider">
    <ul class="slides">
        <li>
            <img src="" data-original="http://flexslider.woothemes.com/images/kitchen_adventurer_caramel.jpg" />
        </li>
        <li>
            <img src="" data-original="http://flexslider.woothemes.com/images/kitchen_adventurer_donut.jpg" />
        </li>
        <li>
            <img src="" data-original="http://flexslider.woothemes.com/images/kitchen_adventurer_cheesecake_brownie.jpg" />
        </li>
        <li>
            <img src="" data-original="http://flexslider.woothemes.com/images/kitchen_adventurer_lemon.jpg" />
        </li>
    </ul>
</div>

CSS

body {
    font-family: Arial;
}

JavaScript

$('.flexslider').flexslider({

     start: function (slider) {

         //This initially loads the 1st image

         var img = slider.slides.eq(slider.animatingTo).find('img'),
             data_orig = img.attr('data-original');
         $(img).attr('src', data_orig);
         $(img).removeAttr('data-original');

     },

     before: function (slider) {

         //This loads the next image every time

         var img = slider.slides.eq(slider.animatingTo).find('img'),
             data_orig = img.attr('data-original');
         $(img).attr('src', data_orig);
         $(img).removeAttr('data-original');

     }



 });