foundation-rails 5.1.1.0 → 5.2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +52 -7
- data/bower.json +2 -2
- data/lib/foundation/rails/version.rb +1 -1
- data/vendor/assets/javascripts/foundation/foundation.abide.js +3 -6
- data/vendor/assets/javascripts/foundation/foundation.accordion.js +5 -4
- data/vendor/assets/javascripts/foundation/foundation.alert.js +1 -1
- data/vendor/assets/javascripts/foundation/foundation.clearing.js +70 -34
- data/vendor/assets/javascripts/foundation/foundation.dropdown.js +121 -28
- data/vendor/assets/javascripts/foundation/foundation.equalizer.js +6 -6
- data/vendor/assets/javascripts/foundation/foundation.interchange.js +34 -25
- data/vendor/assets/javascripts/foundation/foundation.joyride.js +4 -8
- data/vendor/assets/javascripts/foundation/foundation.js +94 -78
- data/vendor/assets/javascripts/foundation/foundation.magellan.js +3 -4
- data/vendor/assets/javascripts/foundation/foundation.offcanvas.js +19 -1
- data/vendor/assets/javascripts/foundation/foundation.orbit.js +151 -102
- data/vendor/assets/javascripts/foundation/foundation.reveal.js +43 -15
- data/vendor/assets/javascripts/foundation/foundation.slider.js +187 -0
- data/vendor/assets/javascripts/foundation/foundation.tab.js +116 -18
- data/vendor/assets/javascripts/foundation/foundation.tooltip.js +112 -60
- data/vendor/assets/javascripts/foundation/foundation.topbar.js +47 -14
- data/vendor/assets/javascripts/vendor/modernizr.js +3 -3
- data/vendor/assets/stylesheets/foundation.scss +7 -0
- data/vendor/assets/stylesheets/foundation/_functions.scss +4 -0
- data/vendor/assets/stylesheets/foundation/_settings.scss +11 -2
- data/vendor/assets/stylesheets/foundation/components/_accordion.scss +5 -1
- data/vendor/assets/stylesheets/foundation/components/_alert-boxes.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_block-grid.scss +44 -12
- data/vendor/assets/stylesheets/foundation/components/_breadcrumbs.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_button-groups.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_buttons.scss +7 -5
- data/vendor/assets/stylesheets/foundation/components/_clearing.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_dropdown-buttons.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_dropdown.scss +100 -11
- data/vendor/assets/stylesheets/foundation/components/_flex-video.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_forms.scss +25 -21
- data/vendor/assets/stylesheets/foundation/components/_global.scss +79 -44
- data/vendor/assets/stylesheets/foundation/components/_grid.scss +6 -2
- data/vendor/assets/stylesheets/foundation/components/_inline-lists.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_joyride.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_keystrokes.scss +5 -1
- data/vendor/assets/stylesheets/foundation/components/_labels.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_magellan.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_offcanvas.scss +51 -59
- data/vendor/assets/stylesheets/foundation/components/_orbit.scss +97 -14
- data/vendor/assets/stylesheets/foundation/components/_pagination.scss +7 -2
- data/vendor/assets/stylesheets/foundation/components/_panels.scss +5 -1
- data/vendor/assets/stylesheets/foundation/components/_pricing-tables.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_progress-bars.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_range-slider.scss +148 -0
- data/vendor/assets/stylesheets/foundation/components/_reveal.scss +36 -7
- data/vendor/assets/stylesheets/foundation/components/_side-nav.scss +8 -3
- data/vendor/assets/stylesheets/foundation/components/_split-buttons.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_sub-nav.scss +6 -2
- data/vendor/assets/stylesheets/foundation/components/_switch.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_tables.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_tabs.scss +12 -6
- data/vendor/assets/stylesheets/foundation/components/_thumbs.scss +4 -0
- data/vendor/assets/stylesheets/foundation/components/_tooltips.scss +9 -0
- data/vendor/assets/stylesheets/foundation/components/_top-bar.scss +52 -25
- data/vendor/assets/stylesheets/foundation/components/_type.scss +132 -75
- data/vendor/assets/stylesheets/foundation/components/_visibility.scss +198 -538
- data/vendor/assets/stylesheets/normalize.scss +179 -166
- metadata +4 -2
@@ -4,7 +4,7 @@
|
|
4
4
|
Foundation.libs.equalizer = {
|
5
5
|
name : 'equalizer',
|
6
6
|
|
7
|
-
version : '5.
|
7
|
+
version : '5.2.0',
|
8
8
|
|
9
9
|
settings : {
|
10
10
|
use_tallest: true,
|
@@ -28,7 +28,7 @@
|
|
28
28
|
vals = equalizer.find('[' + this.attr_name() + '-watch]'),
|
29
29
|
firstTopOffset = vals.first().offset().top,
|
30
30
|
settings = equalizer.data(this.attr_name(true)+'-init');
|
31
|
-
|
31
|
+
|
32
32
|
if (vals.length === 0) return;
|
33
33
|
settings.before_height_change();
|
34
34
|
equalizer.trigger('before-height-change');
|
@@ -40,14 +40,14 @@
|
|
40
40
|
}
|
41
41
|
});
|
42
42
|
if (isStacked) return;
|
43
|
-
|
44
|
-
var heights = vals.map(function(){ return $(this).outerHeight() });
|
43
|
+
|
44
|
+
var heights = vals.map(function(){ return $(this).outerHeight() }).get();
|
45
45
|
if (settings.use_tallest) {
|
46
46
|
var max = Math.max.apply(null, heights);
|
47
|
-
vals.height
|
47
|
+
vals.css('height', max);
|
48
48
|
} else {
|
49
49
|
var min = Math.min.apply(null, heights);
|
50
|
-
vals.height
|
50
|
+
vals.css('height', min);
|
51
51
|
}
|
52
52
|
settings.after_height_change();
|
53
53
|
equalizer.trigger('after-height-change');
|
@@ -4,7 +4,7 @@
|
|
4
4
|
Foundation.libs.interchange = {
|
5
5
|
name : 'interchange',
|
6
6
|
|
7
|
-
version : '5.
|
7
|
+
version : '5.2.0',
|
8
8
|
|
9
9
|
cache : {},
|
10
10
|
|
@@ -15,7 +15,7 @@
|
|
15
15
|
load_attr : 'interchange',
|
16
16
|
|
17
17
|
named_queries : {
|
18
|
-
'default' :
|
18
|
+
'default' : Foundation.media_queries.small,
|
19
19
|
small : Foundation.media_queries.small,
|
20
20
|
medium : Foundation.media_queries.medium,
|
21
21
|
large : Foundation.media_queries.large,
|
@@ -23,11 +23,11 @@
|
|
23
23
|
xxlarge: Foundation.media_queries.xxlarge,
|
24
24
|
landscape : 'only screen and (orientation: landscape)',
|
25
25
|
portrait : 'only screen and (orientation: portrait)',
|
26
|
-
retina : 'only screen and (-webkit-min-device-pixel-ratio: 2),' +
|
27
|
-
'only screen and (min--moz-device-pixel-ratio: 2),' +
|
28
|
-
'only screen and (-o-min-device-pixel-ratio: 2/1),' +
|
29
|
-
'only screen and (min-device-pixel-ratio: 2),' +
|
30
|
-
'only screen and (min-resolution: 192dpi),' +
|
26
|
+
retina : 'only screen and (-webkit-min-device-pixel-ratio: 2),' +
|
27
|
+
'only screen and (min--moz-device-pixel-ratio: 2),' +
|
28
|
+
'only screen and (-o-min-device-pixel-ratio: 2/1),' +
|
29
|
+
'only screen and (min-device-pixel-ratio: 2),' +
|
30
|
+
'only screen and (min-resolution: 192dpi),' +
|
31
31
|
'only screen and (min-resolution: 2dppx)'
|
32
32
|
},
|
33
33
|
|
@@ -57,6 +57,16 @@
|
|
57
57
|
|
58
58
|
if (last_path == path) return;
|
59
59
|
|
60
|
+
|
61
|
+
var regex = "/^.(\.jpg|\.jpeg|\.png|\.gif|\.tiff|\.bmp)\??|#?./";
|
62
|
+
|
63
|
+
if (new RegExp(regex,'i').test(path)){
|
64
|
+
|
65
|
+
$(el).css('background-image', 'url('+path+')');
|
66
|
+
el.data('interchange-last-path', path);
|
67
|
+
return trigger(path);
|
68
|
+
}
|
69
|
+
|
60
70
|
return $.get(path, function (response) {
|
61
71
|
el.html(response);
|
62
72
|
el.data(this.data_attr + '-last-path', path);
|
@@ -72,19 +82,30 @@
|
|
72
82
|
|
73
83
|
this.data_attr = this.set_data_attr();
|
74
84
|
$.extend(true, this.settings, method, options);
|
75
|
-
|
76
85
|
this.bindings(method, options);
|
77
86
|
this.load('images');
|
78
87
|
this.load('nodes');
|
79
88
|
},
|
80
89
|
|
90
|
+
get_media_hash : function() {
|
91
|
+
var mediaHash='';
|
92
|
+
for (var queryName in this.settings.named_queries ) {
|
93
|
+
mediaHash += matchMedia(this.settings.named_queries[queryName]).matches.toString();
|
94
|
+
}
|
95
|
+
return mediaHash;
|
96
|
+
},
|
97
|
+
|
81
98
|
events : function () {
|
82
|
-
var self = this;
|
99
|
+
var self = this, prevMediaHash;
|
83
100
|
|
84
101
|
$(window)
|
85
102
|
.off('.interchange')
|
86
103
|
.on('resize.fndtn.interchange', self.throttle(function () {
|
87
|
-
|
104
|
+
var currMediaHash = self.get_media_hash();
|
105
|
+
if (currMediaHash !== prevMediaHash) {
|
106
|
+
self.resize();
|
107
|
+
}
|
108
|
+
prevMediaHash = currMediaHash;
|
88
109
|
}, 50));
|
89
110
|
|
90
111
|
return this;
|
@@ -187,8 +208,6 @@
|
|
187
208
|
data_attr = this.data_attr;
|
188
209
|
|
189
210
|
this.cached_nodes = [];
|
190
|
-
// Set nodes_loaded to true if there are no nodes
|
191
|
-
// this.nodes_loaded = false;
|
192
211
|
this.nodes_loaded = (count === 0);
|
193
212
|
|
194
213
|
|
@@ -224,6 +243,7 @@
|
|
224
243
|
},
|
225
244
|
|
226
245
|
convert_directive : function (directive) {
|
246
|
+
|
227
247
|
var trimmed = this.trim(directive);
|
228
248
|
|
229
249
|
if (trimmed.length > 0) {
|
@@ -255,20 +275,8 @@
|
|
255
275
|
return this.store(el, scenarios);
|
256
276
|
},
|
257
277
|
|
258
|
-
uuid : function (separator) {
|
259
|
-
var delim = separator || "-",
|
260
|
-
self = this;
|
261
|
-
|
262
|
-
function S4() {
|
263
|
-
return self.random_str(6);
|
264
|
-
}
|
265
|
-
|
266
|
-
return (S4() + S4() + delim + S4() + delim + S4()
|
267
|
-
+ delim + S4() + delim + S4() + S4() + S4());
|
268
|
-
},
|
269
|
-
|
270
278
|
store : function (el, scenarios) {
|
271
|
-
var uuid = this.
|
279
|
+
var uuid = this.random_str(),
|
272
280
|
current_uuid = el.data(this.add_namespace('uuid', true));
|
273
281
|
|
274
282
|
if (this.cache[current_uuid]) return this.cache[current_uuid];
|
@@ -279,6 +287,7 @@
|
|
279
287
|
},
|
280
288
|
|
281
289
|
trim : function(str) {
|
290
|
+
|
282
291
|
if (typeof str === 'string') {
|
283
292
|
return $.trim(str);
|
284
293
|
}
|
@@ -6,7 +6,7 @@
|
|
6
6
|
Foundation.libs.joyride = {
|
7
7
|
name : 'joyride',
|
8
8
|
|
9
|
-
version : '5.
|
9
|
+
version : '5.2.0',
|
10
10
|
|
11
11
|
defaults : {
|
12
12
|
expose : false, // turn on or off the expose feature
|
@@ -55,7 +55,7 @@
|
|
55
55
|
init : function (scope, method, options) {
|
56
56
|
Foundation.inherit(this, 'throttle random_str');
|
57
57
|
|
58
|
-
this.settings = this.defaults;
|
58
|
+
this.settings = this.settings || $.extend({}, this.defaults, (options || method));
|
59
59
|
|
60
60
|
this.bindings(method, options)
|
61
61
|
},
|
@@ -205,7 +205,6 @@
|
|
205
205
|
},
|
206
206
|
|
207
207
|
create : function (opts) {
|
208
|
-
console.log(opts.$li)
|
209
208
|
var buttonText = opts.$li.attr(this.add_namespace('data-button'))
|
210
209
|
|| opts.$li.attr(this.add_namespace('data-text')),
|
211
210
|
tipClass = opts.$li.attr('class'),
|
@@ -372,7 +371,6 @@
|
|
372
371
|
},
|
373
372
|
|
374
373
|
set_target : function () {
|
375
|
-
console.log(this.add_namespace('data-class'))
|
376
374
|
var cl = this.settings.$li.attr(this.add_namespace('data-class')),
|
377
375
|
id = this.settings.$li.attr(this.add_namespace('data-id')),
|
378
376
|
$sel = function () {
|
@@ -385,8 +383,6 @@
|
|
385
383
|
}
|
386
384
|
};
|
387
385
|
|
388
|
-
console.log(cl, id)
|
389
|
-
|
390
386
|
this.settings.$target = $sel();
|
391
387
|
},
|
392
388
|
|
@@ -462,7 +458,7 @@
|
|
462
458
|
|
463
459
|
this.settings.$next_tip.css({
|
464
460
|
top: this.settings.$target.offset().top,
|
465
|
-
left: (this.
|
461
|
+
left: (this.settings.$target.outerWidth() + this.settings.$target.offset().left + nub_width)});
|
466
462
|
|
467
463
|
this.nub_position($nub, this.settings.tip_settings.nub_position, 'left');
|
468
464
|
|
@@ -470,7 +466,7 @@
|
|
470
466
|
|
471
467
|
this.settings.$next_tip.css({
|
472
468
|
top: this.settings.$target.offset().top,
|
473
|
-
left: (this.settings.$target.offset().left - this.
|
469
|
+
left: (this.settings.$target.offset().left - this.settings.$next_tip.outerWidth() - nub_width)});
|
474
470
|
|
475
471
|
this.nub_position($nub, this.settings.tip_settings.nub_position, 'right');
|
476
472
|
|
@@ -11,26 +11,27 @@
|
|
11
11
|
|
12
12
|
var header_helpers = function (class_array) {
|
13
13
|
var i = class_array.length;
|
14
|
+
var head = $('head');
|
14
15
|
|
15
16
|
while (i--) {
|
16
17
|
if($('head').has('.' + class_array[i]).length === 0) {
|
17
|
-
$('head').append('<meta class="' + class_array[i] + '"
|
18
|
+
$('head').append('<meta class="' + class_array[i] + '" />');
|
18
19
|
}
|
19
20
|
}
|
20
21
|
};
|
21
22
|
|
22
23
|
header_helpers([
|
23
|
-
'foundation-mq-small',
|
24
|
-
'foundation-mq-medium',
|
25
|
-
'foundation-mq-large',
|
26
|
-
'foundation-mq-xlarge',
|
27
|
-
'foundation-mq-xxlarge',
|
24
|
+
'foundation-mq-small',
|
25
|
+
'foundation-mq-medium',
|
26
|
+
'foundation-mq-large',
|
27
|
+
'foundation-mq-xlarge',
|
28
|
+
'foundation-mq-xxlarge',
|
28
29
|
'foundation-data-attribute-namespace']);
|
29
30
|
|
30
31
|
// Enable FastClick if present
|
31
32
|
|
32
33
|
$(function() {
|
33
|
-
if(typeof FastClick !== 'undefined') {
|
34
|
+
if (typeof FastClick !== 'undefined') {
|
34
35
|
// Don't attach to body if undefined
|
35
36
|
if (typeof document.body !== 'undefined') {
|
36
37
|
FastClick.attach(document.body);
|
@@ -43,10 +44,11 @@
|
|
43
44
|
// getElementById is not available.
|
44
45
|
var S = function (selector, context) {
|
45
46
|
if (typeof selector === 'string') {
|
46
|
-
if (context) {
|
47
|
+
if (context) {
|
47
48
|
var cont;
|
48
49
|
if (context.jquery) {
|
49
50
|
cont = context[0];
|
51
|
+
if (!cont) return context;
|
50
52
|
} else {
|
51
53
|
cont = context;
|
52
54
|
}
|
@@ -70,22 +72,12 @@
|
|
70
72
|
return arr.join('-');
|
71
73
|
};
|
72
74
|
|
73
|
-
var header_helpers = function (class_array) {
|
74
|
-
var i = class_array.length;
|
75
|
-
|
76
|
-
while (i--) {
|
77
|
-
if($('head').has('.' + class_array[i]).length === 0) {
|
78
|
-
$('head').append('<meta class="' + class_array[i] + '">');
|
79
|
-
}
|
80
|
-
}
|
81
|
-
};
|
82
|
-
|
83
75
|
var add_namespace = function (str) {
|
84
76
|
var parts = str.split('-'),
|
85
77
|
i = parts.length,
|
86
78
|
arr = [];
|
87
79
|
|
88
|
-
while(i--) {
|
80
|
+
while (i--) {
|
89
81
|
if (i !== 0) {
|
90
82
|
arr.push(parts[i]);
|
91
83
|
} else {
|
@@ -120,7 +112,6 @@
|
|
120
112
|
} else {
|
121
113
|
S('[' + this.attr_name() +']', this.scope).each(function () {
|
122
114
|
var should_bind_events = !S(this).data(self.attr_name(true) + '-init');
|
123
|
-
|
124
115
|
S(this).data(self.attr_name(true) + '-init', $.extend({}, self.settings, (options || method), self.data_options(S(this))));
|
125
116
|
|
126
117
|
if (should_bind_events) {
|
@@ -157,8 +148,8 @@
|
|
157
148
|
} else {
|
158
149
|
bindLoad.call(image);
|
159
150
|
}
|
160
|
-
}
|
161
|
-
|
151
|
+
};
|
152
|
+
|
162
153
|
/*
|
163
154
|
https://github.com/paulirish/matchMedia.js
|
164
155
|
*/
|
@@ -179,7 +170,7 @@
|
|
179
170
|
fakeBody.style.background = "none";
|
180
171
|
fakeBody.appendChild(div);
|
181
172
|
|
182
|
-
return function(q){
|
173
|
+
return function (q) {
|
183
174
|
|
184
175
|
div.innerHTML = "­<style media=\"" + q + "\"> #mq-test-1 { width: 42px; }</style>";
|
185
176
|
|
@@ -205,21 +196,21 @@
|
|
205
196
|
* Licensed under the MIT license.
|
206
197
|
*/
|
207
198
|
|
208
|
-
(function(
|
199
|
+
(function($) {
|
209
200
|
|
210
201
|
// requestAnimationFrame polyfill adapted from Erik Möller
|
211
202
|
// fixes from Paul Irish and Tino Zijdel
|
212
203
|
// http://paulirish.com/2011/requestanimationframe-for-smart-animating/
|
213
204
|
// http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating
|
214
205
|
|
215
|
-
|
216
206
|
var animating,
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
207
|
+
lastTime = 0,
|
208
|
+
vendors = ['webkit', 'moz'],
|
209
|
+
requestAnimationFrame = window.requestAnimationFrame,
|
210
|
+
cancelAnimationFrame = window.cancelAnimationFrame,
|
211
|
+
jqueryFxAvailable = 'undefined' !== typeof jQuery.fx;
|
221
212
|
|
222
|
-
for(; lastTime < vendors.length && !requestAnimationFrame; lastTime++) {
|
213
|
+
for (; lastTime < vendors.length && !requestAnimationFrame; lastTime++) {
|
223
214
|
requestAnimationFrame = window[ vendors[lastTime] + "RequestAnimationFrame" ];
|
224
215
|
cancelAnimationFrame = cancelAnimationFrame ||
|
225
216
|
window[ vendors[lastTime] + "CancelAnimationFrame" ] ||
|
@@ -227,42 +218,48 @@
|
|
227
218
|
}
|
228
219
|
|
229
220
|
function raf() {
|
230
|
-
if (
|
231
|
-
requestAnimationFrame(
|
232
|
-
|
221
|
+
if (animating) {
|
222
|
+
requestAnimationFrame(raf);
|
223
|
+
|
224
|
+
if (jqueryFxAvailable) {
|
225
|
+
jQuery.fx.tick();
|
226
|
+
}
|
233
227
|
}
|
234
228
|
}
|
235
229
|
|
236
|
-
if (
|
230
|
+
if (requestAnimationFrame) {
|
237
231
|
// use rAF
|
238
232
|
window.requestAnimationFrame = requestAnimationFrame;
|
239
233
|
window.cancelAnimationFrame = cancelAnimationFrame;
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
234
|
+
|
235
|
+
if (jqueryFxAvailable) {
|
236
|
+
jQuery.fx.timer = function (timer) {
|
237
|
+
if (timer() && jQuery.timers.push(timer) && !animating) {
|
238
|
+
animating = true;
|
239
|
+
raf();
|
240
|
+
}
|
241
|
+
};
|
246
242
|
|
247
|
-
|
248
|
-
|
249
|
-
|
243
|
+
jQuery.fx.stop = function () {
|
244
|
+
animating = false;
|
245
|
+
};
|
246
|
+
}
|
250
247
|
} else {
|
251
248
|
// polyfill
|
252
|
-
window.requestAnimationFrame = function(
|
249
|
+
window.requestAnimationFrame = function (callback, element) {
|
253
250
|
var currTime = new Date().getTime(),
|
254
|
-
timeToCall = Math.max(
|
255
|
-
id = window.setTimeout(
|
256
|
-
callback(
|
257
|
-
}, timeToCall
|
251
|
+
timeToCall = Math.max(0, 16 - (currTime - lastTime)),
|
252
|
+
id = window.setTimeout(function () {
|
253
|
+
callback(currTime + timeToCall);
|
254
|
+
}, timeToCall);
|
258
255
|
lastTime = currTime + timeToCall;
|
259
256
|
return id;
|
260
257
|
};
|
261
258
|
|
262
|
-
window.cancelAnimationFrame = function(id) {
|
259
|
+
window.cancelAnimationFrame = function (id) {
|
263
260
|
clearTimeout(id);
|
264
261
|
};
|
265
|
-
|
262
|
+
|
266
263
|
}
|
267
264
|
|
268
265
|
}( jQuery ));
|
@@ -279,7 +276,7 @@
|
|
279
276
|
window.Foundation = {
|
280
277
|
name : 'Foundation',
|
281
278
|
|
282
|
-
version : '5.
|
279
|
+
version : '5.2.0',
|
283
280
|
|
284
281
|
media_queries : {
|
285
282
|
small : S('.foundation-mq-small').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
@@ -326,6 +323,12 @@
|
|
326
323
|
this.patch(this.libs[lib]);
|
327
324
|
|
328
325
|
if (args && args.hasOwnProperty(lib)) {
|
326
|
+
if (typeof this.libs[lib].settings !== 'undefined') {
|
327
|
+
$.extend(true, this.libs[lib].settings, args[lib]);
|
328
|
+
}
|
329
|
+
else if (typeof this.libs[lib].defaults !== 'undefined') {
|
330
|
+
$.extend(true, this.libs[lib].defaults, args[lib]);
|
331
|
+
}
|
329
332
|
return this.libs[lib].init.apply(this.libs[lib], [this.scope, args[lib]]);
|
330
333
|
}
|
331
334
|
|
@@ -359,10 +362,19 @@
|
|
359
362
|
},
|
360
363
|
|
361
364
|
set_namespace: function () {
|
362
|
-
var namespace = $('.foundation-data-attribute-namespace').css('font-family');
|
363
365
|
|
364
|
-
|
366
|
+
// Don't bother reading the namespace out of the meta tag
|
367
|
+
// if the namespace has been set globally in javascript
|
368
|
+
//
|
369
|
+
// Example: something like Foundation.global.namespace = 'my-namespace';
|
370
|
+
//
|
371
|
+
// Otherwise, if the namespace hasn't been set globally,
|
372
|
+
// read it out of the meta tag
|
373
|
+
//
|
374
|
+
var namespace = this.global.namespace || $('.foundation-data-attribute-namespace').css('font-family');
|
365
375
|
|
376
|
+
if (/false/i.test(namespace)) return;
|
377
|
+
|
366
378
|
this.global.namespace = namespace;
|
367
379
|
},
|
368
380
|
|
@@ -397,7 +409,7 @@
|
|
397
409
|
//
|
398
410
|
// Returns:
|
399
411
|
// Lazy_function (Function): Function with throttling applied.
|
400
|
-
throttle : function(func, delay) {
|
412
|
+
throttle : function (func, delay) {
|
401
413
|
var timer = null;
|
402
414
|
|
403
415
|
return function () {
|
@@ -424,11 +436,11 @@
|
|
424
436
|
//
|
425
437
|
// Returns:
|
426
438
|
// Lazy_function (Function): Function with debouncing applied.
|
427
|
-
debounce : function(func, delay, immediate) {
|
439
|
+
debounce : function (func, delay, immediate) {
|
428
440
|
var timeout, result;
|
429
|
-
return function() {
|
441
|
+
return function () {
|
430
442
|
var context = this, args = arguments;
|
431
|
-
var later = function() {
|
443
|
+
var later = function () {
|
432
444
|
timeout = null;
|
433
445
|
if (!immediate) result = func.apply(context, args);
|
434
446
|
};
|
@@ -474,7 +486,7 @@
|
|
474
486
|
return ! isNaN (o-0) && o !== null && o !== "" && o !== false && o !== true;
|
475
487
|
}
|
476
488
|
|
477
|
-
function trim(str) {
|
489
|
+
function trim (str) {
|
478
490
|
if (typeof str === 'string') return $.trim(str);
|
479
491
|
return str;
|
480
492
|
}
|
@@ -484,7 +496,13 @@
|
|
484
496
|
|
485
497
|
if (/true/i.test(p[1])) p[1] = true;
|
486
498
|
if (/false/i.test(p[1])) p[1] = false;
|
487
|
-
if (isNumber(p[1]))
|
499
|
+
if (isNumber(p[1])) {
|
500
|
+
if (p[1].indexOf('.') === -1) {
|
501
|
+
p[1] = parseInt(p[1], 10);
|
502
|
+
} else {
|
503
|
+
p[1] = parseFloat(p[1], 10);
|
504
|
+
}
|
505
|
+
}
|
488
506
|
|
489
507
|
if (p.length === 2 && p[0].length > 0) {
|
490
508
|
opts[trim(p[0])] = trim(p[1]);
|
@@ -502,7 +520,7 @@
|
|
502
520
|
// Foundation.media_queries
|
503
521
|
//
|
504
522
|
// Class (String): Class name for the generated <meta> tag
|
505
|
-
register_media : function(media, media_class) {
|
523
|
+
register_media : function (media, media_class) {
|
506
524
|
if(Foundation.media_queries[media] === undefined) {
|
507
525
|
$('head').append('<meta class="' + media_class + '">');
|
508
526
|
Foundation.media_queries[media] = removeQuotes($('.' + media_class).css('font-family'));
|
@@ -517,12 +535,13 @@
|
|
517
535
|
//
|
518
536
|
// Media (String): Optional media query string for the CSS rule to be
|
519
537
|
// nested under.
|
520
|
-
add_custom_rule : function(rule, media) {
|
521
|
-
if(media === undefined) {
|
538
|
+
add_custom_rule : function (rule, media) {
|
539
|
+
if (media === undefined) {
|
522
540
|
Foundation.stylesheet.insertRule(rule, Foundation.stylesheet.cssRules.length);
|
523
541
|
} else {
|
524
542
|
var query = Foundation.media_queries[media];
|
525
|
-
|
543
|
+
|
544
|
+
if (query !== undefined) {
|
526
545
|
Foundation.stylesheet.insertRule('@media ' +
|
527
546
|
Foundation.media_queries[media] + '{ ' + rule + ' }');
|
528
547
|
}
|
@@ -540,10 +559,14 @@
|
|
540
559
|
var self = this,
|
541
560
|
unloaded = images.length;
|
542
561
|
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
562
|
+
if (unloaded === 0) {
|
563
|
+
callback(images);
|
564
|
+
}
|
565
|
+
|
566
|
+
images.each(function () {
|
567
|
+
single_image_loaded(self.S(this), function () {
|
568
|
+
unloaded -= 1;
|
569
|
+
if (unloaded === 0) {
|
547
570
|
callback(images);
|
548
571
|
}
|
549
572
|
});
|
@@ -559,18 +582,11 @@
|
|
559
582
|
//
|
560
583
|
// Returns:
|
561
584
|
// Rand (String): Pseudo-random, alphanumeric string.
|
562
|
-
random_str : function (
|
563
|
-
|
585
|
+
random_str : function () {
|
586
|
+
if (!this.fidx) this.fidx = 0;
|
587
|
+
this.prefix = this.prefix || [(this.name || 'F'), (+new Date).toString(36)].join('-');
|
564
588
|
|
565
|
-
|
566
|
-
length = Math.floor(Math.random() * chars.length);
|
567
|
-
}
|
568
|
-
|
569
|
-
var str = '';
|
570
|
-
while (length--) {
|
571
|
-
str += chars[Math.floor(Math.random() * chars.length)];
|
572
|
-
}
|
573
|
-
return str;
|
589
|
+
return this.prefix + (this.fidx++).toString(36);
|
574
590
|
}
|
575
591
|
}
|
576
592
|
};
|