1(function($) { 2 3 // Behavior to load FlexSlider 4 Drupal.behaviors.flexslider = { 5 attach: function(context, settings) { 6 var id; 7 var sliders = []; 8 if ($.type(settings.flexslider) !== 'undefined' && $.type(settings.flexslider.instances) !== 'undefined') { 9 10 for (id in settings.flexslider.instances) { 11 12 if (settings.flexslider.optionsets[settings.flexslider.instances[id]] !== undefined) { 13 if (settings.flexslider.optionsets[settings.flexslider.instances[id]].asNavFor !== '') { 14 // We have to initialize all the sliders which are "asNavFor" first. 15 _flexslider_init(id, settings.flexslider.optionsets[settings.flexslider.instances[id]], context); 16 } else { 17 // Everyone else is second 18 sliders[id] = settings.flexslider.optionsets[settings.flexslider.instances[id]]; 19 } 20 } 21 } 22 } 23 // Slider set 24 for (id in sliders) { 25 _flexslider_init(id, settings.flexslider.optionsets[settings.flexslider.instances[id]], context); 26 } 27 } 28 }; 29 30 /** 31 * Initialize the flexslider instance 32 */ 33 34 function _flexslider_init(id, optionset, context) { 35 $('#' + id, context).once('flexslider', function() { 36 // Remove width/height attributes 37 // @todo load the css path from the settings 38 $(this).find('ul.slides > li *').removeAttr('width').removeAttr('height'); 39 40 if (optionset) { 41 // Add events that developers can use to interact. 42 $(this).flexslider($.extend(optionset, { 43 start: function(slider) { 44 slider.trigger('start', [slider]); 45 }, 46 before: function(slider) { 47 slider.trigger('before', [slider]); 48 }, 49 after: function(slider) { 50 slider.trigger('after', [slider]); 51 }, 52 end: function(slider) { 53 slider.trigger('end', [slider]); 54 }, 55 added: function(slider) { 56 slider.trigger('added', [slider]); 57 }, 58 removed: function(slider) { 59 slider.trigger('removed', [slider]); 60 }, 61 init: function(slider) { 62 slider.trigger('init', [slider]); 63 } 64 })); 65 } else { 66 $(this).flexslider(); 67 } 68 }); 69 } 70 71}(jQuery));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.