From: Steve Hull Date: Tue, 7 Jan 2014 09:49:35 +0000 (-0800) Subject: Allow a configurable selector for slides X-Git-Tag: v5.2.0~90^2^2 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F4079%2Fhead;p=thirdparty%2Ffoundation%2Ffoundation-sites.git Allow a configurable selector for slides --- diff --git a/doc/pages/components/orbit.html b/doc/pages/components/orbit.html index ea821122f..185c895bf 100644 --- a/doc/pages/components/orbit.html +++ b/doc/pages/components/orbit.html @@ -185,6 +185,7 @@ $(document).foundation({ timer_paused_class: 'paused', // Class name given to the paused button timer_progress_class: 'orbit-progress', // Class name given to the progress bar slides_container_class: 'orbit-slides-container', // Class name given to the slides container + slide_selector: 'li', // Default is "*" which selects all chilren under the container bullets_container_class: 'orbit-bullets', bullets_active_class: 'active', // Class name given to the active bullet slide_number_class: 'orbit-slide-number', // Class name given to the slide number diff --git a/js/foundation/foundation.orbit.js b/js/foundation/foundation.orbit.js index 515769a37..4f4fb8c21 100644 --- a/js/foundation/foundation.orbit.js +++ b/js/foundation/foundation.orbit.js @@ -21,12 +21,17 @@ locked = false, adjust_height_after = false; - slides_container.children().first().addClass(settings.active_slide_class); + + self.slides = function() { + return slides_container.children(settings.slide_selector); + }; + + self.slides().first().addClass(settings.active_slide_class); self.update_slide_number = function(index) { if (settings.slide_number) { number_container.find('span:first').text(parseInt(index)+1); - number_container.find('span:last').text(slides_container.children().length); + number_container.find('span:last').text(self.slides().length); } if (settings.bullets) { bullets_container.children().removeClass(settings.bullets_active_class); @@ -35,7 +40,7 @@ }; self.update_active_link = function(index) { - var link = $('a[data-orbit-link="'+slides_container.children().eq(index).attr('data-orbit-slide')+'"]'); + var link = $('a[data-orbit-link="'+self.slides().eq(index).attr('data-orbit-slide')+'"]'); link.siblings().removeClass(settings.bullets_active_class); link.addClass(settings.bullets_active_class); }; @@ -68,7 +73,7 @@ bullets_container = $('
    ').addClass(settings.bullets_container_class); container.append(bullets_container); bullets_container.wrap('
    '); - slides_container.children().each(function(idx, el) { + self.slides().each(function(idx, el) { var bullet = $('
  1. ').attr('data-orbit-slide', idx); bullets_container.append(bullet); }); @@ -86,7 +91,7 @@ // if (locked) {return false;} if (next_idx === idx) {return false;} if (typeof timer === 'object') {timer.restart();} - var slides = slides_container.children(); + var slides = self.slides(); var dir = 'next'; locked = true; @@ -168,10 +173,10 @@ } self.compute_dimensions = function() { - var current = $(slides_container.children().get(idx)); + var current = $(self.slides().get(idx)); var h = current.height(); if (!settings.variable_height) { - slides_container.children().each(function(){ + self.slides().each(function(){ if ($(this).height() > h) { h = $(this).height(); } }); } @@ -395,6 +400,7 @@ timer_paused_class: 'paused', timer_progress_class: 'orbit-progress', slides_container_class: 'orbit-slides-container', + slide_selector: '*', bullets_container_class: 'orbit-bullets', bullets_active_class: 'active', slide_number_class: 'orbit-slide-number',