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 = $('- ').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',