foundation-rails 5.5.1.0 → 5.5.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/bower.json +2 -2
- data/lib/foundation/rails/version.rb +1 -1
- data/update-gem.sh +12 -7
- data/vendor/assets/javascripts/foundation.js +2 -2
- data/vendor/assets/javascripts/foundation/foundation.abide.js +62 -40
- data/vendor/assets/javascripts/foundation/foundation.accordion.js +7 -7
- data/vendor/assets/javascripts/foundation/foundation.alert.js +3 -3
- data/vendor/assets/javascripts/foundation/foundation.clearing.js +46 -48
- data/vendor/assets/javascripts/foundation/foundation.dropdown.js +71 -62
- data/vendor/assets/javascripts/foundation/foundation.equalizer.js +18 -14
- data/vendor/assets/javascripts/foundation/foundation.interchange.js +31 -25
- data/vendor/assets/javascripts/foundation/foundation.joyride.js +81 -73
- data/vendor/assets/javascripts/foundation/foundation.js +54 -41
- data/vendor/assets/javascripts/foundation/foundation.magellan.js +44 -39
- data/vendor/assets/javascripts/foundation/foundation.offcanvas.js +19 -19
- data/vendor/assets/javascripts/foundation/foundation.orbit.js +133 -129
- data/vendor/assets/javascripts/foundation/foundation.reveal.js +73 -51
- data/vendor/assets/javascripts/foundation/foundation.slider.js +63 -67
- data/vendor/assets/javascripts/foundation/foundation.tab.js +39 -19
- data/vendor/assets/javascripts/foundation/foundation.tooltip.js +30 -23
- data/vendor/assets/javascripts/foundation/foundation.topbar.js +66 -59
- data/vendor/assets/stylesheets/foundation/_functions.scss +1 -1
- data/vendor/assets/stylesheets/foundation/_settings.scss +99 -77
- data/vendor/assets/stylesheets/foundation/components/_alert-boxes.scss +2 -2
- data/vendor/assets/stylesheets/foundation/components/_block-grid.scss +1 -0
- data/vendor/assets/stylesheets/foundation/components/_breadcrumbs.scss +1 -1
- data/vendor/assets/stylesheets/foundation/components/_button-groups.scss +7 -4
- data/vendor/assets/stylesheets/foundation/components/_buttons.scss +2 -1
- data/vendor/assets/stylesheets/foundation/components/_clearing.scss +11 -2
- data/vendor/assets/stylesheets/foundation/components/_dropdown-buttons.scss +1 -0
- data/vendor/assets/stylesheets/foundation/components/_forms.scss +13 -6
- data/vendor/assets/stylesheets/foundation/components/_global.scss +3 -3
- data/vendor/assets/stylesheets/foundation/components/_icon-bar.scss +32 -2
- data/vendor/assets/stylesheets/foundation/components/_range-slider.scss +6 -4
- data/vendor/assets/stylesheets/foundation/components/_reveal.scss +15 -29
- data/vendor/assets/stylesheets/foundation/components/_split-buttons.scss +12 -0
- data/vendor/assets/stylesheets/foundation/components/_sub-nav.scss +1 -2
- data/vendor/assets/stylesheets/foundation/components/_tabs.scss +3 -1
- data/vendor/assets/stylesheets/foundation/components/_toolbar.scss +3 -1
- data/vendor/assets/stylesheets/foundation/components/_top-bar.scss +10 -3
- data/vendor/assets/stylesheets/foundation/components/_type.scss +1 -62
- data/vendor/assets/stylesheets/foundation/components/_visibility.scss +78 -12
- metadata +2 -3
- data/vendor/assets/_settings.scss +0 -1445
@@ -4,17 +4,17 @@
|
|
4
4
|
Foundation.libs['magellan-expedition'] = {
|
5
5
|
name : 'magellan-expedition',
|
6
6
|
|
7
|
-
version : '5.5.
|
7
|
+
version : '5.5.1',
|
8
8
|
|
9
9
|
settings : {
|
10
|
-
active_class: 'active',
|
11
|
-
threshold: 0, // pixels from the top of the expedition for it to become fixes
|
12
|
-
destination_threshold: 20, // pixels from the top of destination for it to be considered active
|
13
|
-
throttle_delay: 30, // calculation throttling to increase framerate
|
14
|
-
fixed_top: 0, // top distance in pixels assigend to the fixed element on scroll
|
15
|
-
offset_by_height: true, // whether to offset the destination by the expedition height. Usually you want this to be true, unless your expedition is on the side.
|
16
|
-
duration: 700, // animation duration time
|
17
|
-
easing: 'swing' // animation easing
|
10
|
+
active_class : 'active',
|
11
|
+
threshold : 0, // pixels from the top of the expedition for it to become fixes
|
12
|
+
destination_threshold : 20, // pixels from the top of destination for it to be considered active
|
13
|
+
throttle_delay : 30, // calculation throttling to increase framerate
|
14
|
+
fixed_top : 0, // top distance in pixels assigend to the fixed element on scroll
|
15
|
+
offset_by_height : true, // whether to offset the destination by the expedition height. Usually you want this to be true, unless your expedition is on the side.
|
16
|
+
duration : 700, // animation duration time
|
17
|
+
easing : 'swing' // animation easing
|
18
18
|
},
|
19
19
|
|
20
20
|
init : function (scope, method, options) {
|
@@ -37,14 +37,13 @@
|
|
37
37
|
var expedition = $(this).closest('[' + self.attr_name() + ']'),
|
38
38
|
settings = expedition.data('magellan-expedition-init'),
|
39
39
|
hash = this.hash.split('#').join(''),
|
40
|
-
target = $('a[name="'+hash+'"]');
|
40
|
+
target = $('a[name="' + hash + '"]');
|
41
41
|
|
42
42
|
if (target.length === 0) {
|
43
|
-
target = $('#'+hash);
|
43
|
+
target = $('#' + hash);
|
44
44
|
|
45
45
|
}
|
46
46
|
|
47
|
-
|
48
47
|
// Account for expedition height if fixed position
|
49
48
|
var scroll_top = target.offset().top - settings.destination_threshold + 1;
|
50
49
|
if (settings.offset_by_height) {
|
@@ -52,13 +51,12 @@
|
|
52
51
|
}
|
53
52
|
|
54
53
|
$('html, body').stop().animate({
|
55
|
-
'scrollTop': scroll_top
|
54
|
+
'scrollTop' : scroll_top
|
56
55
|
}, settings.duration, settings.easing, function () {
|
57
|
-
if(history.pushState) {
|
58
|
-
history.pushState(null, null, '#'+hash);
|
59
|
-
}
|
60
|
-
|
61
|
-
location.hash = '#'+hash;
|
56
|
+
if (history.pushState) {
|
57
|
+
history.pushState(null, null, '#' + hash);
|
58
|
+
} else {
|
59
|
+
location.hash = '#' + hash;
|
62
60
|
}
|
63
61
|
});
|
64
62
|
})
|
@@ -68,15 +66,15 @@
|
|
68
66
|
.on('resize.fndtn.magellan', self.throttle(this.set_expedition_position.bind(this), settings.throttle_delay));
|
69
67
|
},
|
70
68
|
|
71
|
-
check_for_arrivals : function() {
|
69
|
+
check_for_arrivals : function () {
|
72
70
|
var self = this;
|
73
71
|
self.update_arrivals();
|
74
72
|
self.update_expedition_positions();
|
75
73
|
},
|
76
74
|
|
77
|
-
set_expedition_position : function() {
|
75
|
+
set_expedition_position : function () {
|
78
76
|
var self = this;
|
79
|
-
$('[' + this.attr_name() + '=fixed]', self.scope).each(function(idx, el) {
|
77
|
+
$('[' + this.attr_name() + '=fixed]', self.scope).each(function (idx, el) {
|
80
78
|
var expedition = $(this),
|
81
79
|
settings = expedition.data('magellan-expedition-init'),
|
82
80
|
styles = expedition.attr('styles'), // save styles
|
@@ -87,54 +85,55 @@
|
|
87
85
|
|
88
86
|
//set fixed-top by attribute
|
89
87
|
fixed_top = parseInt(expedition.data('magellan-fixed-top'));
|
90
|
-
if(!isNaN(fixed_top))
|
91
|
-
|
88
|
+
if (!isNaN(fixed_top)) {
|
89
|
+
self.settings.fixed_top = fixed_top;
|
90
|
+
}
|
92
91
|
|
93
92
|
expedition.data(self.data_attr('magellan-top-offset'), top_offset);
|
94
93
|
expedition.attr('style', styles);
|
95
94
|
});
|
96
95
|
},
|
97
96
|
|
98
|
-
update_expedition_positions : function() {
|
97
|
+
update_expedition_positions : function () {
|
99
98
|
var self = this,
|
100
99
|
window_top_offset = $(window).scrollTop();
|
101
100
|
|
102
|
-
$('[' + this.attr_name() + '=fixed]', self.scope).each(function() {
|
101
|
+
$('[' + this.attr_name() + '=fixed]', self.scope).each(function () {
|
103
102
|
var expedition = $(this),
|
104
103
|
settings = expedition.data('magellan-expedition-init'),
|
105
104
|
styles = expedition.attr('style'), // save styles
|
106
105
|
top_offset = expedition.data('magellan-top-offset');
|
107
106
|
|
108
107
|
//scroll to the top distance
|
109
|
-
if (window_top_offset+self.settings.fixed_top >= top_offset) {
|
108
|
+
if (window_top_offset + self.settings.fixed_top >= top_offset) {
|
110
109
|
// Placeholder allows height calculations to be consistent even when
|
111
110
|
// appearing to switch between fixed/non-fixed placement
|
112
111
|
var placeholder = expedition.prev('[' + self.add_namespace('data-magellan-expedition-clone') + ']');
|
113
112
|
if (placeholder.length === 0) {
|
114
113
|
placeholder = expedition.clone();
|
115
114
|
placeholder.removeAttr(self.attr_name());
|
116
|
-
placeholder.attr(self.add_namespace('data-magellan-expedition-clone'),'');
|
115
|
+
placeholder.attr(self.add_namespace('data-magellan-expedition-clone'), '');
|
117
116
|
expedition.before(placeholder);
|
118
117
|
}
|
119
|
-
expedition.css({position:'fixed', top: settings.fixed_top}).addClass('fixed');
|
118
|
+
expedition.css({position :'fixed', top : settings.fixed_top}).addClass('fixed');
|
120
119
|
} else {
|
121
120
|
expedition.prev('[' + self.add_namespace('data-magellan-expedition-clone') + ']').remove();
|
122
|
-
expedition.attr('style',styles).css('position','').css('top','').removeClass('fixed');
|
121
|
+
expedition.attr('style', styles).css('position', '').css('top', '').removeClass('fixed');
|
123
122
|
}
|
124
123
|
});
|
125
124
|
},
|
126
125
|
|
127
|
-
update_arrivals : function() {
|
126
|
+
update_arrivals : function () {
|
128
127
|
var self = this,
|
129
128
|
window_top_offset = $(window).scrollTop();
|
130
129
|
|
131
|
-
$('[' + this.attr_name() + ']', self.scope).each(function() {
|
130
|
+
$('[' + this.attr_name() + ']', self.scope).each(function () {
|
132
131
|
var expedition = $(this),
|
133
132
|
settings = expedition.data(self.attr_name(true) + '-init'),
|
134
133
|
offsets = self.offsets(expedition, window_top_offset),
|
135
134
|
arrivals = expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']'),
|
136
135
|
active_item = false;
|
137
|
-
offsets.each(function(idx, item) {
|
136
|
+
offsets.each(function (idx, item) {
|
138
137
|
if (item.viewport_offset >= item.top_offset) {
|
139
138
|
var arrivals = expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']');
|
140
139
|
arrivals.not(item.arrival).removeClass(settings.active_class);
|
@@ -144,16 +143,18 @@
|
|
144
143
|
}
|
145
144
|
});
|
146
145
|
|
147
|
-
if (!active_item)
|
146
|
+
if (!active_item) {
|
147
|
+
arrivals.removeClass(settings.active_class);
|
148
|
+
}
|
148
149
|
});
|
149
150
|
},
|
150
151
|
|
151
|
-
offsets : function(expedition, window_offset) {
|
152
|
+
offsets : function (expedition, window_offset) {
|
152
153
|
var self = this,
|
153
154
|
settings = expedition.data(self.attr_name(true) + '-init'),
|
154
155
|
viewport_offset = window_offset;
|
155
156
|
|
156
|
-
return expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']').map(function(idx, el) {
|
157
|
+
return expedition.find('[' + self.add_namespace('data-magellan-arrival') + ']').map(function (idx, el) {
|
157
158
|
var name = $(this).data(self.data_attr('magellan-arrival')),
|
158
159
|
dest = $('[' + self.add_namespace('data-magellan-destination') + '=' + name + ']');
|
159
160
|
if (dest.length > 0) {
|
@@ -169,14 +170,18 @@
|
|
169
170
|
viewport_offset : viewport_offset
|
170
171
|
}
|
171
172
|
}
|
172
|
-
}).sort(function(a, b) {
|
173
|
-
if (a.top_offset < b.top_offset)
|
174
|
-
|
173
|
+
}).sort(function (a, b) {
|
174
|
+
if (a.top_offset < b.top_offset) {
|
175
|
+
return -1;
|
176
|
+
}
|
177
|
+
if (a.top_offset > b.top_offset) {
|
178
|
+
return 1;
|
179
|
+
}
|
175
180
|
return 0;
|
176
181
|
});
|
177
182
|
},
|
178
183
|
|
179
|
-
data_attr: function (str) {
|
184
|
+
data_attr : function (str) {
|
180
185
|
if (this.namespace.length > 0) {
|
181
186
|
return this.namespace + '-' + str;
|
182
187
|
}
|
@@ -4,11 +4,11 @@
|
|
4
4
|
Foundation.libs.offcanvas = {
|
5
5
|
name : 'offcanvas',
|
6
6
|
|
7
|
-
version : '5.5.
|
7
|
+
version : '5.5.1',
|
8
8
|
|
9
9
|
settings : {
|
10
|
-
open_method: 'move',
|
11
|
-
close_on_click: false
|
10
|
+
open_method : 'move',
|
11
|
+
close_on_click : false
|
12
12
|
},
|
13
13
|
|
14
14
|
init : function (scope, method, options) {
|
@@ -37,7 +37,7 @@
|
|
37
37
|
S(this.scope).off('.offcanvas')
|
38
38
|
.on('click.fndtn.offcanvas', '.left-off-canvas-toggle', function (e) {
|
39
39
|
self.click_toggle_class(e, move_class + right_postfix);
|
40
|
-
if (self.settings.open_method !== 'overlap'){
|
40
|
+
if (self.settings.open_method !== 'overlap') {
|
41
41
|
S('.left-submenu').removeClass(move_class + right_postfix);
|
42
42
|
}
|
43
43
|
$('.left-off-canvas-toggle').attr('aria-expanded', 'true');
|
@@ -46,13 +46,13 @@
|
|
46
46
|
var settings = self.get_settings(e);
|
47
47
|
var parent = S(this).parent();
|
48
48
|
|
49
|
-
if(settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')){
|
49
|
+
if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {
|
50
50
|
self.hide.call(self, move_class + right_postfix, self.get_wrapper(e));
|
51
51
|
parent.parent().removeClass(move_class + right_postfix);
|
52
|
-
}else if(S(this).parent().hasClass('has-submenu')){
|
52
|
+
} else if (S(this).parent().hasClass('has-submenu')) {
|
53
53
|
e.preventDefault();
|
54
54
|
S(this).siblings('.left-submenu').toggleClass(move_class + right_postfix);
|
55
|
-
}else if(parent.hasClass('back')){
|
55
|
+
} else if (parent.hasClass('back')) {
|
56
56
|
e.preventDefault();
|
57
57
|
parent.parent().removeClass(move_class + right_postfix);
|
58
58
|
}
|
@@ -60,7 +60,7 @@
|
|
60
60
|
})
|
61
61
|
.on('click.fndtn.offcanvas', '.right-off-canvas-toggle', function (e) {
|
62
62
|
self.click_toggle_class(e, move_class + left_postfix);
|
63
|
-
if (self.settings.open_method !== 'overlap'){
|
63
|
+
if (self.settings.open_method !== 'overlap') {
|
64
64
|
S('.right-submenu').removeClass(move_class + left_postfix);
|
65
65
|
}
|
66
66
|
$('.right-off-canvas-toggle').attr('aria-expanded', 'true');
|
@@ -69,13 +69,13 @@
|
|
69
69
|
var settings = self.get_settings(e);
|
70
70
|
var parent = S(this).parent();
|
71
71
|
|
72
|
-
if(settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')){
|
72
|
+
if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {
|
73
73
|
self.hide.call(self, move_class + left_postfix, self.get_wrapper(e));
|
74
74
|
parent.parent().removeClass(move_class + left_postfix);
|
75
|
-
}else if(S(this).parent().hasClass('has-submenu')){
|
75
|
+
} else if (S(this).parent().hasClass('has-submenu')) {
|
76
76
|
e.preventDefault();
|
77
77
|
S(this).siblings('.right-submenu').toggleClass(move_class + left_postfix);
|
78
|
-
}else if(parent.hasClass('back')){
|
78
|
+
} else if (parent.hasClass('back')) {
|
79
79
|
e.preventDefault();
|
80
80
|
parent.parent().removeClass(move_class + left_postfix);
|
81
81
|
}
|
@@ -84,7 +84,7 @@
|
|
84
84
|
.on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {
|
85
85
|
self.click_remove_class(e, move_class + left_postfix);
|
86
86
|
S('.right-submenu').removeClass(move_class + left_postfix);
|
87
|
-
if (right_postfix){
|
87
|
+
if (right_postfix) {
|
88
88
|
self.click_remove_class(e, move_class + right_postfix);
|
89
89
|
S('.left-submenu').removeClass(move_class + left_postfix);
|
90
90
|
}
|
@@ -100,7 +100,7 @@
|
|
100
100
|
});
|
101
101
|
},
|
102
102
|
|
103
|
-
toggle: function(class_name, $off_canvas) {
|
103
|
+
toggle : function (class_name, $off_canvas) {
|
104
104
|
$off_canvas = $off_canvas || this.get_wrapper();
|
105
105
|
if ($off_canvas.is('.' + class_name)) {
|
106
106
|
this.hide(class_name, $off_canvas);
|
@@ -109,36 +109,36 @@
|
|
109
109
|
}
|
110
110
|
},
|
111
111
|
|
112
|
-
show: function(class_name, $off_canvas) {
|
112
|
+
show : function (class_name, $off_canvas) {
|
113
113
|
$off_canvas = $off_canvas || this.get_wrapper();
|
114
114
|
$off_canvas.trigger('open').trigger('open.fndtn.offcanvas');
|
115
115
|
$off_canvas.addClass(class_name);
|
116
116
|
},
|
117
117
|
|
118
|
-
hide: function(class_name, $off_canvas) {
|
118
|
+
hide : function (class_name, $off_canvas) {
|
119
119
|
$off_canvas = $off_canvas || this.get_wrapper();
|
120
120
|
$off_canvas.trigger('close').trigger('close.fndtn.offcanvas');
|
121
121
|
$off_canvas.removeClass(class_name);
|
122
122
|
},
|
123
123
|
|
124
|
-
click_toggle_class: function(e, class_name) {
|
124
|
+
click_toggle_class : function (e, class_name) {
|
125
125
|
e.preventDefault();
|
126
126
|
var $off_canvas = this.get_wrapper(e);
|
127
127
|
this.toggle(class_name, $off_canvas);
|
128
128
|
},
|
129
129
|
|
130
|
-
click_remove_class: function(e, class_name) {
|
130
|
+
click_remove_class : function (e, class_name) {
|
131
131
|
e.preventDefault();
|
132
132
|
var $off_canvas = this.get_wrapper(e);
|
133
133
|
this.hide(class_name, $off_canvas);
|
134
134
|
},
|
135
135
|
|
136
|
-
get_settings: function(e) {
|
136
|
+
get_settings : function (e) {
|
137
137
|
var offcanvas = this.S(e.target).closest('[' + this.attr_name() + ']');
|
138
138
|
return offcanvas.data(this.attr_name(true) + '-init') || this.settings;
|
139
139
|
},
|
140
140
|
|
141
|
-
get_wrapper: function(e) {
|
141
|
+
get_wrapper : function (e) {
|
142
142
|
var $off_canvas = this.S(e ? e.target : this.scope).closest('.off-canvas-wrap');
|
143
143
|
|
144
144
|
if ($off_canvas.length === 0) {
|
@@ -1,9 +1,9 @@
|
|
1
1
|
;(function ($, window, document, undefined) {
|
2
2
|
'use strict';
|
3
3
|
|
4
|
-
var noop = function() {};
|
4
|
+
var noop = function () {};
|
5
5
|
|
6
|
-
var Orbit = function(el, settings) {
|
6
|
+
var Orbit = function (el, settings) {
|
7
7
|
// Don't reinitialize plugin
|
8
8
|
if (el.hasClass(settings.slides_container_class)) {
|
9
9
|
return this;
|
@@ -21,16 +21,15 @@
|
|
21
21
|
locked = false,
|
22
22
|
adjust_height_after = false;
|
23
23
|
|
24
|
-
|
25
|
-
self.slides = function() {
|
24
|
+
self.slides = function () {
|
26
25
|
return slides_container.children(settings.slide_selector);
|
27
26
|
};
|
28
27
|
|
29
28
|
self.slides().first().addClass(settings.active_slide_class);
|
30
29
|
|
31
|
-
self.update_slide_number = function(index) {
|
30
|
+
self.update_slide_number = function (index) {
|
32
31
|
if (settings.slide_number) {
|
33
|
-
number_container.find('span:first').text(parseInt(index)+1);
|
32
|
+
number_container.find('span:first').text(parseInt(index) + 1);
|
34
33
|
number_container.find('span:last').text(self.slides().length);
|
35
34
|
}
|
36
35
|
if (settings.bullets) {
|
@@ -39,14 +38,14 @@
|
|
39
38
|
}
|
40
39
|
};
|
41
40
|
|
42
|
-
self.update_active_link = function(index) {
|
43
|
-
var link = $('[data-orbit-link="'+self.slides().eq(index).attr('data-orbit-slide')+'"]');
|
41
|
+
self.update_active_link = function (index) {
|
42
|
+
var link = $('[data-orbit-link="' + self.slides().eq(index).attr('data-orbit-slide') + '"]');
|
44
43
|
link.siblings().removeClass(settings.bullets_active_class);
|
45
44
|
link.addClass(settings.bullets_active_class);
|
46
45
|
};
|
47
46
|
|
48
|
-
self.build_markup = function() {
|
49
|
-
slides_container.wrap('<div class="'+settings.container_class+'"></div>');
|
47
|
+
self.build_markup = function () {
|
48
|
+
slides_container.wrap('<div class="' + settings.container_class + '"></div>');
|
50
49
|
container = slides_container.parent();
|
51
50
|
slides_container.addClass(settings.slides_container_class);
|
52
51
|
|
@@ -77,7 +76,7 @@
|
|
77
76
|
bullets_container = $('<ol>').addClass(settings.bullets_container_class);
|
78
77
|
container.append(bullets_container);
|
79
78
|
bullets_container.wrap('<div class="orbit-bullets-container"></div>');
|
80
|
-
self.slides().each(function(idx, el) {
|
79
|
+
self.slides().each(function (idx, el) {
|
81
80
|
var bullet = $('<li>').attr('data-orbit-slide', idx).on('click', self.link_bullet);;
|
82
81
|
bullets_container.append(bullet);
|
83
82
|
});
|
@@ -85,7 +84,7 @@
|
|
85
84
|
|
86
85
|
};
|
87
86
|
|
88
|
-
self._goto = function(next_idx, start_timer) {
|
87
|
+
self._goto = function (next_idx, start_timer) {
|
89
88
|
// if (locked) {return false;}
|
90
89
|
if (next_idx === idx) {return false;}
|
91
90
|
if (typeof timer === 'object') {timer.restart();}
|
@@ -95,10 +94,14 @@
|
|
95
94
|
locked = true;
|
96
95
|
if (next_idx < idx) {dir = 'prev';}
|
97
96
|
if (next_idx >= slides.length) {
|
98
|
-
if (!settings.circular)
|
97
|
+
if (!settings.circular) {
|
98
|
+
return false;
|
99
|
+
}
|
99
100
|
next_idx = 0;
|
100
101
|
} else if (next_idx < 0) {
|
101
|
-
if (!settings.circular)
|
102
|
+
if (!settings.circular) {
|
103
|
+
return false;
|
104
|
+
}
|
102
105
|
next_idx = slides.length - 1;
|
103
106
|
}
|
104
107
|
|
@@ -113,17 +116,17 @@
|
|
113
116
|
settings.before_slide_change();
|
114
117
|
self.update_active_link(next_idx);
|
115
118
|
|
116
|
-
var callback = function() {
|
117
|
-
var unlock = function() {
|
119
|
+
var callback = function () {
|
120
|
+
var unlock = function () {
|
118
121
|
idx = next_idx;
|
119
122
|
locked = false;
|
120
123
|
if (start_timer === true) {timer = self.create_timer(); timer.start();}
|
121
124
|
self.update_slide_number(idx);
|
122
|
-
slides_container.trigger('after-slide-change.fndtn.orbit',[{slide_number: idx, total_slides: slides.length}]);
|
125
|
+
slides_container.trigger('after-slide-change.fndtn.orbit', [{slide_number : idx, total_slides : slides.length}]);
|
123
126
|
settings.after_slide_change(idx, slides.length);
|
124
127
|
};
|
125
|
-
if (slides_container.
|
126
|
-
slides_container.animate({'height': next.
|
128
|
+
if (slides_container.outerHeight() != next.outerHeight() && settings.variable_height) {
|
129
|
+
slides_container.animate({'height': next.outerHeight()}, 250, 'linear', unlock);
|
127
130
|
} else {
|
128
131
|
unlock();
|
129
132
|
}
|
@@ -131,129 +134,132 @@
|
|
131
134
|
|
132
135
|
if (slides.length === 1) {callback(); return false;}
|
133
136
|
|
134
|
-
var start_animation = function() {
|
137
|
+
var start_animation = function () {
|
135
138
|
if (dir === 'next') {animate.next(current, next, callback);}
|
136
139
|
if (dir === 'prev') {animate.prev(current, next, callback);}
|
137
140
|
};
|
138
141
|
|
139
|
-
if (next.
|
140
|
-
slides_container.animate({'height': next.
|
142
|
+
if (next.outerHeight() > slides_container.outerHeight() && settings.variable_height) {
|
143
|
+
slides_container.animate({'height': next.outerHeight()}, 250, 'linear', start_animation);
|
141
144
|
} else {
|
142
145
|
start_animation();
|
143
146
|
}
|
144
147
|
};
|
145
148
|
|
146
|
-
self.next = function(e) {
|
149
|
+
self.next = function (e) {
|
147
150
|
e.stopImmediatePropagation();
|
148
151
|
e.preventDefault();
|
149
152
|
self._goto(idx + 1);
|
150
153
|
};
|
151
154
|
|
152
|
-
self.prev = function(e) {
|
155
|
+
self.prev = function (e) {
|
153
156
|
e.stopImmediatePropagation();
|
154
157
|
e.preventDefault();
|
155
158
|
self._goto(idx - 1);
|
156
159
|
};
|
157
160
|
|
158
|
-
self.link_custom = function(e) {
|
161
|
+
self.link_custom = function (e) {
|
159
162
|
e.preventDefault();
|
160
163
|
var link = $(this).attr('data-orbit-link');
|
161
164
|
if ((typeof link === 'string') && (link = $.trim(link)) != '') {
|
162
|
-
var slide = container.find('[data-orbit-slide='+link+']');
|
165
|
+
var slide = container.find('[data-orbit-slide=' + link + ']');
|
163
166
|
if (slide.index() != -1) {self._goto(slide.index());}
|
164
167
|
}
|
165
168
|
};
|
166
169
|
|
167
|
-
self.link_bullet = function(e) {
|
170
|
+
self.link_bullet = function (e) {
|
168
171
|
var index = $(this).attr('data-orbit-slide');
|
169
172
|
if ((typeof index === 'string') && (index = $.trim(index)) != '') {
|
170
|
-
if(isNaN(parseInt(index)))
|
171
|
-
|
172
|
-
var slide = container.find('[data-orbit-slide='+index+']');
|
173
|
+
if (isNaN(parseInt(index))) {
|
174
|
+
var slide = container.find('[data-orbit-slide=' + index + ']');
|
173
175
|
if (slide.index() != -1) {self._goto(slide.index() + 1);}
|
174
|
-
}
|
175
|
-
else
|
176
|
-
{
|
176
|
+
} else {
|
177
177
|
self._goto(parseInt(index));
|
178
178
|
}
|
179
179
|
}
|
180
180
|
|
181
181
|
}
|
182
182
|
|
183
|
-
self.timer_callback = function() {
|
183
|
+
self.timer_callback = function () {
|
184
184
|
self._goto(idx + 1, true);
|
185
185
|
}
|
186
186
|
|
187
|
-
self.compute_dimensions = function() {
|
187
|
+
self.compute_dimensions = function () {
|
188
188
|
var current = $(self.slides().get(idx));
|
189
|
-
var h = current.
|
189
|
+
var h = current.outerHeight();
|
190
190
|
if (!settings.variable_height) {
|
191
191
|
self.slides().each(function(){
|
192
|
-
if ($(this).
|
192
|
+
if ($(this).outerHeight() > h) { h = $(this).outerHeight(); }
|
193
193
|
});
|
194
194
|
}
|
195
195
|
slides_container.height(h);
|
196
196
|
};
|
197
197
|
|
198
|
-
self.create_timer = function() {
|
198
|
+
self.create_timer = function () {
|
199
199
|
var t = new Timer(
|
200
|
-
container.find('.'+settings.timer_container_class),
|
200
|
+
container.find('.' + settings.timer_container_class),
|
201
201
|
settings,
|
202
202
|
self.timer_callback
|
203
203
|
);
|
204
204
|
return t;
|
205
205
|
};
|
206
206
|
|
207
|
-
self.stop_timer = function() {
|
208
|
-
if (typeof timer === 'object')
|
207
|
+
self.stop_timer = function () {
|
208
|
+
if (typeof timer === 'object') {
|
209
|
+
timer.stop();
|
210
|
+
}
|
209
211
|
};
|
210
212
|
|
211
|
-
self.toggle_timer = function() {
|
212
|
-
var t = container.find('.'+settings.timer_container_class);
|
213
|
+
self.toggle_timer = function () {
|
214
|
+
var t = container.find('.' + settings.timer_container_class);
|
213
215
|
if (t.hasClass(settings.timer_paused_class)) {
|
214
216
|
if (typeof timer === 'undefined') {timer = self.create_timer();}
|
215
217
|
timer.start();
|
216
|
-
}
|
217
|
-
else {
|
218
|
+
} else {
|
218
219
|
if (typeof timer === 'object') {timer.stop();}
|
219
220
|
}
|
220
221
|
};
|
221
222
|
|
222
|
-
self.init = function() {
|
223
|
+
self.init = function () {
|
223
224
|
self.build_markup();
|
224
225
|
if (settings.timer) {
|
225
226
|
timer = self.create_timer();
|
226
227
|
Foundation.utils.image_loaded(this.slides().children('img'), timer.start);
|
227
228
|
}
|
228
229
|
animate = new FadeAnimation(settings, slides_container);
|
229
|
-
if (settings.animation === 'slide')
|
230
|
+
if (settings.animation === 'slide') {
|
230
231
|
animate = new SlideAnimation(settings, slides_container);
|
232
|
+
}
|
231
233
|
|
232
|
-
container.on('click', '.'+settings.next_class, self.next);
|
233
|
-
container.on('click', '.'+settings.prev_class, self.prev);
|
234
|
+
container.on('click', '.' + settings.next_class, self.next);
|
235
|
+
container.on('click', '.' + settings.prev_class, self.prev);
|
234
236
|
|
235
237
|
if (settings.next_on_click) {
|
236
|
-
container.on('click', '.'+settings.slides_container_class+' [data-orbit-slide]', self.link_bullet);
|
238
|
+
container.on('click', '.' + settings.slides_container_class + ' [data-orbit-slide]', self.link_bullet);
|
237
239
|
}
|
238
240
|
|
239
241
|
container.on('click', self.toggle_timer);
|
240
242
|
if (settings.swipe) {
|
241
|
-
container.on('touchstart.fndtn.orbit', function(e) {
|
243
|
+
container.on('touchstart.fndtn.orbit', function (e) {
|
242
244
|
if (!e.touches) {e = e.originalEvent;}
|
243
245
|
var data = {
|
244
|
-
start_page_x: e.touches[0].pageX,
|
245
|
-
start_page_y: e.touches[0].pageY,
|
246
|
-
start_time: (new Date()).getTime(),
|
247
|
-
delta_x: 0,
|
248
|
-
is_scrolling: undefined
|
246
|
+
start_page_x : e.touches[0].pageX,
|
247
|
+
start_page_y : e.touches[0].pageY,
|
248
|
+
start_time : (new Date()).getTime(),
|
249
|
+
delta_x : 0,
|
250
|
+
is_scrolling : undefined
|
249
251
|
};
|
250
252
|
container.data('swipe-transition', data);
|
251
253
|
e.stopPropagation();
|
252
254
|
})
|
253
|
-
.on('touchmove.fndtn.orbit', function(e) {
|
254
|
-
if (!e.touches) {
|
255
|
+
.on('touchmove.fndtn.orbit', function (e) {
|
256
|
+
if (!e.touches) {
|
257
|
+
e = e.originalEvent;
|
258
|
+
}
|
255
259
|
// Ignore pinch/zoom events
|
256
|
-
if(e.touches.length > 1 || e.scale && e.scale !== 1)
|
260
|
+
if (e.touches.length > 1 || e.scale && e.scale !== 1) {
|
261
|
+
return;
|
262
|
+
}
|
257
263
|
|
258
264
|
var data = container.data('swipe-transition');
|
259
265
|
if (typeof data === 'undefined') {data = {};}
|
@@ -266,22 +272,22 @@
|
|
266
272
|
|
267
273
|
if (!data.is_scrolling && !data.active) {
|
268
274
|
e.preventDefault();
|
269
|
-
var direction = (data.delta_x < 0) ? (idx+1) : (idx-1);
|
275
|
+
var direction = (data.delta_x < 0) ? (idx + 1) : (idx - 1);
|
270
276
|
data.active = true;
|
271
277
|
self._goto(direction);
|
272
278
|
}
|
273
279
|
})
|
274
|
-
.on('touchend.fndtn.orbit', function(e) {
|
280
|
+
.on('touchend.fndtn.orbit', function (e) {
|
275
281
|
container.data('swipe-transition', {});
|
276
282
|
e.stopPropagation();
|
277
283
|
})
|
278
284
|
}
|
279
|
-
container.on('mouseenter.fndtn.orbit', function(e) {
|
285
|
+
container.on('mouseenter.fndtn.orbit', function (e) {
|
280
286
|
if (settings.timer && settings.pause_on_hover) {
|
281
287
|
self.stop_timer();
|
282
288
|
}
|
283
289
|
})
|
284
|
-
.on('mouseleave.fndtn.orbit', function(e) {
|
290
|
+
.on('mouseleave.fndtn.orbit', function (e) {
|
285
291
|
if (settings.timer && settings.resume_on_mouseout) {
|
286
292
|
timer.start();
|
287
293
|
}
|
@@ -290,8 +296,8 @@
|
|
290
296
|
$(document).on('click', '[data-orbit-link]', self.link_custom);
|
291
297
|
$(window).on('load resize', self.compute_dimensions);
|
292
298
|
Foundation.utils.image_loaded(this.slides().children('img'), self.compute_dimensions);
|
293
|
-
Foundation.utils.image_loaded(this.slides().children('img'), function() {
|
294
|
-
container.prev('.'+settings.preloader_class).css('display', 'none');
|
299
|
+
Foundation.utils.image_loaded(this.slides().children('img'), function () {
|
300
|
+
container.prev('.' + settings.preloader_class).css('display', 'none');
|
295
301
|
self.update_slide_number(0);
|
296
302
|
self.update_active_link(0);
|
297
303
|
slides_container.trigger('ready.fndtn.orbit');
|
@@ -301,43 +307,43 @@
|
|
301
307
|
self.init();
|
302
308
|
};
|
303
309
|
|
304
|
-
var Timer = function(el, settings, callback) {
|
310
|
+
var Timer = function (el, settings, callback) {
|
305
311
|
var self = this,
|
306
312
|
duration = settings.timer_speed,
|
307
|
-
progress = el.find('.'+settings.timer_progress_class),
|
313
|
+
progress = el.find('.' + settings.timer_progress_class),
|
308
314
|
start,
|
309
315
|
timeout,
|
310
316
|
left = -1;
|
311
317
|
|
312
|
-
this.update_progress = function(w) {
|
318
|
+
this.update_progress = function (w) {
|
313
319
|
var new_progress = progress.clone();
|
314
320
|
new_progress.attr('style', '');
|
315
|
-
new_progress.css('width', w+'%');
|
321
|
+
new_progress.css('width', w + '%');
|
316
322
|
progress.replaceWith(new_progress);
|
317
323
|
progress = new_progress;
|
318
324
|
};
|
319
325
|
|
320
|
-
this.restart = function() {
|
326
|
+
this.restart = function () {
|
321
327
|
clearTimeout(timeout);
|
322
328
|
el.addClass(settings.timer_paused_class);
|
323
329
|
left = -1;
|
324
330
|
self.update_progress(0);
|
325
331
|
};
|
326
332
|
|
327
|
-
this.start = function() {
|
333
|
+
this.start = function () {
|
328
334
|
if (!el.hasClass(settings.timer_paused_class)) {return true;}
|
329
335
|
left = (left === -1) ? duration : left;
|
330
336
|
el.removeClass(settings.timer_paused_class);
|
331
337
|
start = new Date().getTime();
|
332
|
-
progress.animate({'width': '100%'}, left, 'linear');
|
333
|
-
timeout = setTimeout(function() {
|
338
|
+
progress.animate({'width' : '100%'}, left, 'linear');
|
339
|
+
timeout = setTimeout(function () {
|
334
340
|
self.restart();
|
335
341
|
callback();
|
336
342
|
}, left);
|
337
343
|
el.trigger('timer-started.fndtn.orbit')
|
338
344
|
};
|
339
345
|
|
340
|
-
this.stop = function() {
|
346
|
+
this.stop = function () {
|
341
347
|
if (el.hasClass(settings.timer_paused_class)) {return true;}
|
342
348
|
clearTimeout(timeout);
|
343
349
|
el.addClass(settings.timer_paused_class);
|
@@ -349,95 +355,94 @@
|
|
349
355
|
};
|
350
356
|
};
|
351
357
|
|
352
|
-
var SlideAnimation = function(settings, container) {
|
358
|
+
var SlideAnimation = function (settings, container) {
|
353
359
|
var duration = settings.animation_speed;
|
354
360
|
var is_rtl = ($('html[dir=rtl]').length === 1);
|
355
361
|
var margin = is_rtl ? 'marginRight' : 'marginLeft';
|
356
362
|
var animMargin = {};
|
357
363
|
animMargin[margin] = '0%';
|
358
364
|
|
359
|
-
this.next = function(current, next, callback) {
|
360
|
-
current.animate({marginLeft:'-100%'}, duration);
|
361
|
-
next.animate(animMargin, duration, function() {
|
365
|
+
this.next = function (current, next, callback) {
|
366
|
+
current.animate({marginLeft : '-100%'}, duration);
|
367
|
+
next.animate(animMargin, duration, function () {
|
362
368
|
current.css(margin, '100%');
|
363
369
|
callback();
|
364
370
|
});
|
365
371
|
};
|
366
372
|
|
367
|
-
this.prev = function(current, prev, callback) {
|
368
|
-
current.animate({marginLeft:'100%'}, duration);
|
373
|
+
this.prev = function (current, prev, callback) {
|
374
|
+
current.animate({marginLeft : '100%'}, duration);
|
369
375
|
prev.css(margin, '-100%');
|
370
|
-
prev.animate(animMargin, duration, function() {
|
376
|
+
prev.animate(animMargin, duration, function () {
|
371
377
|
current.css(margin, '100%');
|
372
378
|
callback();
|
373
379
|
});
|
374
380
|
};
|
375
381
|
};
|
376
382
|
|
377
|
-
var FadeAnimation = function(settings, container) {
|
383
|
+
var FadeAnimation = function (settings, container) {
|
378
384
|
var duration = settings.animation_speed;
|
379
385
|
var is_rtl = ($('html[dir=rtl]').length === 1);
|
380
386
|
var margin = is_rtl ? 'marginRight' : 'marginLeft';
|
381
387
|
|
382
|
-
this.next = function(current, next, callback) {
|
383
|
-
next.css({'margin':'0%', 'opacity':'0.01'});
|
384
|
-
next.animate({'opacity':'1'}, duration, 'linear', function() {
|
388
|
+
this.next = function (current, next, callback) {
|
389
|
+
next.css({'margin' : '0%', 'opacity' : '0.01'});
|
390
|
+
next.animate({'opacity' :'1'}, duration, 'linear', function () {
|
385
391
|
current.css('margin', '100%');
|
386
392
|
callback();
|
387
393
|
});
|
388
394
|
};
|
389
395
|
|
390
|
-
this.prev = function(current, prev, callback) {
|
391
|
-
prev.css({'margin':'0%', 'opacity':'0.01'});
|
392
|
-
prev.animate({'opacity':'1'}, duration, 'linear', function() {
|
396
|
+
this.prev = function (current, prev, callback) {
|
397
|
+
prev.css({'margin' : '0%', 'opacity' : '0.01'});
|
398
|
+
prev.animate({'opacity' : '1'}, duration, 'linear', function () {
|
393
399
|
current.css('margin', '100%');
|
394
400
|
callback();
|
395
401
|
});
|
396
402
|
};
|
397
403
|
};
|
398
404
|
|
399
|
-
|
400
405
|
Foundation.libs = Foundation.libs || {};
|
401
406
|
|
402
407
|
Foundation.libs.orbit = {
|
403
|
-
name: 'orbit',
|
404
|
-
|
405
|
-
version: '5.5.
|
406
|
-
|
407
|
-
settings: {
|
408
|
-
animation: 'slide',
|
409
|
-
timer_speed: 10000,
|
410
|
-
pause_on_hover: true,
|
411
|
-
resume_on_mouseout: false,
|
412
|
-
next_on_click: true,
|
413
|
-
animation_speed: 500,
|
414
|
-
stack_on_small: false,
|
415
|
-
navigation_arrows: true,
|
416
|
-
slide_number: true,
|
417
|
-
slide_number_text: 'of',
|
418
|
-
container_class: 'orbit-container',
|
419
|
-
stack_on_small_class: 'orbit-stack-on-small',
|
420
|
-
next_class: 'orbit-next',
|
421
|
-
prev_class: 'orbit-prev',
|
422
|
-
timer_container_class: 'orbit-timer',
|
423
|
-
timer_paused_class: 'paused',
|
424
|
-
timer_progress_class: 'orbit-progress',
|
425
|
-
slides_container_class: 'orbit-slides-container',
|
426
|
-
preloader_class: 'preloader',
|
427
|
-
slide_selector: '*',
|
428
|
-
bullets_container_class: 'orbit-bullets',
|
429
|
-
bullets_active_class: 'active',
|
430
|
-
slide_number_class: 'orbit-slide-number',
|
431
|
-
caption_class: 'orbit-caption',
|
432
|
-
active_slide_class: 'active',
|
433
|
-
orbit_transition_class: 'orbit-transitioning',
|
434
|
-
bullets: true,
|
435
|
-
circular: true,
|
436
|
-
timer: true,
|
437
|
-
variable_height: false,
|
438
|
-
swipe: true,
|
439
|
-
before_slide_change: noop,
|
440
|
-
after_slide_change: noop
|
408
|
+
name : 'orbit',
|
409
|
+
|
410
|
+
version : '5.5.1',
|
411
|
+
|
412
|
+
settings : {
|
413
|
+
animation : 'slide',
|
414
|
+
timer_speed : 10000,
|
415
|
+
pause_on_hover : true,
|
416
|
+
resume_on_mouseout : false,
|
417
|
+
next_on_click : true,
|
418
|
+
animation_speed : 500,
|
419
|
+
stack_on_small : false,
|
420
|
+
navigation_arrows : true,
|
421
|
+
slide_number : true,
|
422
|
+
slide_number_text : 'of',
|
423
|
+
container_class : 'orbit-container',
|
424
|
+
stack_on_small_class : 'orbit-stack-on-small',
|
425
|
+
next_class : 'orbit-next',
|
426
|
+
prev_class : 'orbit-prev',
|
427
|
+
timer_container_class : 'orbit-timer',
|
428
|
+
timer_paused_class : 'paused',
|
429
|
+
timer_progress_class : 'orbit-progress',
|
430
|
+
slides_container_class : 'orbit-slides-container',
|
431
|
+
preloader_class : 'preloader',
|
432
|
+
slide_selector : '*',
|
433
|
+
bullets_container_class : 'orbit-bullets',
|
434
|
+
bullets_active_class : 'active',
|
435
|
+
slide_number_class : 'orbit-slide-number',
|
436
|
+
caption_class : 'orbit-caption',
|
437
|
+
active_slide_class : 'active',
|
438
|
+
orbit_transition_class : 'orbit-transitioning',
|
439
|
+
bullets : true,
|
440
|
+
circular : true,
|
441
|
+
timer : true,
|
442
|
+
variable_height : false,
|
443
|
+
swipe : true,
|
444
|
+
before_slide_change : noop,
|
445
|
+
after_slide_change : noop
|
441
446
|
},
|
442
447
|
|
443
448
|
init : function (scope, method, options) {
|
@@ -458,7 +463,7 @@
|
|
458
463
|
var instance = $el.data(self.name + '-instance');
|
459
464
|
instance.compute_dimensions();
|
460
465
|
} else {
|
461
|
-
self.S('[data-orbit]', self.scope).each(function(idx, el) {
|
466
|
+
self.S('[data-orbit]', self.scope).each(function (idx, el) {
|
462
467
|
var $el = self.S(el);
|
463
468
|
var opts = self.data_options($el);
|
464
469
|
var instance = $el.data(self.name + '-instance');
|
@@ -468,5 +473,4 @@
|
|
468
473
|
}
|
469
474
|
};
|
470
475
|
|
471
|
-
|
472
476
|
}(jQuery, window, window.document));
|