zurb-foundation 4.1.6 → 4.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CONTRIBUTING.md +5 -4
- data/Gemfile.lock +1 -1
- data/README.md +7 -0
- data/docs/CHANGELOG.md +27 -0
- data/docs/Gemfile +2 -0
- data/docs/Gemfile.lock +10 -0
- data/docs/_sidebar-components.html.erb +1 -0
- data/docs/_sidebar.html.erb +1 -0
- data/docs/components/alert-boxes.html.erb +8 -3
- data/docs/components/block-grid.html.erb +3 -3
- data/docs/components/breadcrumbs.html.erb +2 -2
- data/docs/components/button-groups.html.erb +2 -2
- data/docs/components/buttons.html.erb +3 -3
- data/docs/components/clearing.html.erb +7 -6
- data/docs/components/custom-forms.html.erb +1 -0
- data/docs/components/dropdown-buttons.html.erb +3 -3
- data/docs/components/dropdown.html.erb +20 -4
- data/docs/components/flex-video.html.erb +3 -3
- data/docs/components/forms.html.erb +5 -5
- data/docs/components/global.html.erb +235 -3
- data/docs/components/grid.html.erb +2 -2
- data/docs/components/inline-lists.html.erb +3 -3
- data/docs/components/interchange.html.erb +127 -0
- data/docs/components/keystrokes.html.erb +3 -3
- data/docs/components/kitchen-sink.html.erb +2 -2
- data/docs/components/labels.html.erb +3 -3
- data/docs/components/orbit.html.erb +120 -8
- data/docs/components/pagination.html.erb +5 -5
- data/docs/components/panels.html.erb +3 -3
- data/docs/components/pricing-tables.html.erb +3 -3
- data/docs/components/progress-bars.html.erb +3 -3
- data/docs/components/reveal.html.erb +126 -7
- data/docs/components/section.html.erb +43 -1
- data/docs/components/side-nav.html.erb +3 -3
- data/docs/components/split-buttons.html.erb +3 -3
- data/docs/components/sub-nav.html.erb +4 -4
- data/docs/components/switch.html.erb +3 -3
- data/docs/components/tables.html.erb +1 -1
- data/docs/components/thumbnails.html.erb +2 -2
- data/docs/components/tooltips.html.erb +34 -1
- data/docs/components/top-bar.html.erb +109 -30
- data/docs/components/type.html.erb +2 -1
- data/docs/components/visibility.html.erb +8 -8
- data/docs/css/normalize.scss +2 -2
- data/docs/css/qunit.css +1 -1
- data/docs/img/demos/demo1.jpg +0 -0
- data/docs/img/demos/demo2.jpg +0 -0
- data/docs/img/demos/demo3.jpg +0 -0
- data/docs/img/demos/demo4.jpg +0 -0
- data/docs/img/demos/demo5.jpg +0 -0
- data/docs/img/demos/interchange/default.jpg +0 -0
- data/docs/img/demos/interchange/large.jpg +0 -0
- data/docs/img/demos/interchange/med.jpg +0 -0
- data/docs/img/demos/interchange/small.jpg +0 -0
- data/docs/img/demos/interchange/smallest.jpg +0 -0
- data/docs/index.html.erb +14 -5
- data/docs/javascript.html.erb +2 -4
- data/docs/layout.html.erb +1 -1
- data/docs/rails.html.erb +4 -1
- data/docs/sass.html.erb +1274 -1023
- data/js/foundation/foundation.alerts.js +3 -1
- data/js/foundation/foundation.clearing.js +1 -1
- data/js/foundation/foundation.dropdown.js +25 -6
- data/js/foundation/foundation.forms.js +14 -12
- data/js/foundation/foundation.interchange.js +265 -0
- data/js/foundation/foundation.joyride.js +16 -3
- data/js/foundation/foundation.js +53 -7
- data/js/foundation/foundation.magellan.js +5 -3
- data/js/foundation/foundation.orbit.js +19 -2
- data/js/foundation/foundation.reveal.js +64 -11
- data/js/foundation/foundation.section.js +26 -17
- data/js/foundation/foundation.tooltips.js +16 -8
- data/js/foundation/foundation.topbar.js +98 -46
- data/js/foundation/index.js +1 -0
- data/lib/foundation/generators/install_generator.rb +2 -2
- data/lib/foundation/version.rb +1 -1
- data/scss/foundation/_variables.scss +134 -71
- data/scss/foundation/components/_alert-boxes.scss +20 -20
- data/scss/foundation/components/_block-grid.scss +7 -4
- data/scss/foundation/components/_breadcrumbs.scss +3 -3
- data/scss/foundation/components/_buttons.scss +5 -3
- data/scss/foundation/components/_clearing.scss +12 -6
- data/scss/foundation/components/_custom-forms.scss +17 -10
- data/scss/foundation/components/_dropdown.scss +6 -6
- data/scss/foundation/components/_forms.scss +5 -3
- data/scss/foundation/components/_global.scss +63 -30
- data/scss/foundation/components/_grid.scss +10 -9
- data/scss/foundation/components/_joyride.scss +22 -20
- data/scss/foundation/components/_keystrokes.scss +1 -1
- data/scss/foundation/components/_orbit.scss +108 -30
- data/scss/foundation/components/_reveal.scss +12 -8
- data/scss/foundation/components/_section.scss +38 -3
- data/scss/foundation/components/_switch.scss +18 -12
- data/scss/foundation/components/_thumbs.scss +10 -3
- data/scss/foundation/components/_tooltips.scss +11 -11
- data/scss/foundation/components/_top-bar.scss +102 -64
- data/scss/foundation/components/_type.scss +54 -47
- data/templates/project/manifest.rb +1 -0
- metadata +11 -4
@@ -6,7 +6,7 @@
|
|
6
6
|
Foundation.libs.joyride = {
|
7
7
|
name: 'joyride',
|
8
8
|
|
9
|
-
version : '4.
|
9
|
+
version : '4.2.0',
|
10
10
|
|
11
11
|
defaults : {
|
12
12
|
expose : false, // turn on or off the expose feature
|
@@ -41,7 +41,8 @@
|
|
41
41
|
modal : '<div class="joyride-modal-bg"></div>',
|
42
42
|
expose : '<div class="joyride-expose-wrapper"></div>',
|
43
43
|
exposeCover: '<div class="joyride-expose-cover"></div>'
|
44
|
-
}
|
44
|
+
},
|
45
|
+
exposeAddClass : '' // One or more space-separated class names to be added to exposed element
|
45
46
|
},
|
46
47
|
|
47
48
|
settings : {},
|
@@ -565,6 +566,7 @@
|
|
565
566
|
exposeCover,
|
566
567
|
el,
|
567
568
|
origCSS,
|
569
|
+
origClasses,
|
568
570
|
randId = 'expose-'+Math.floor(Math.random()*10000);
|
569
571
|
|
570
572
|
if (arguments.length > 0 && arguments[0] instanceof $) {
|
@@ -597,6 +599,8 @@
|
|
597
599
|
zIndex: el.css('z-index'),
|
598
600
|
position: el.css('position')
|
599
601
|
};
|
602
|
+
|
603
|
+
origClasses = el.attr('class') == null ? '' : el.attr('class');
|
600
604
|
|
601
605
|
el.css('z-index',parseInt(expose.css('z-index'))+1);
|
602
606
|
|
@@ -605,6 +609,8 @@
|
|
605
609
|
}
|
606
610
|
|
607
611
|
el.data('expose-css',origCSS);
|
612
|
+
el.data('orig-class', origClasses);
|
613
|
+
el.attr('class', origClasses + ' ' + this.settings.exposeAddClass);
|
608
614
|
|
609
615
|
exposeCover.css({
|
610
616
|
top: el.offset().top,
|
@@ -626,6 +632,7 @@
|
|
626
632
|
el,
|
627
633
|
expose ,
|
628
634
|
origCSS,
|
635
|
+
origClasses,
|
629
636
|
clearAll = false;
|
630
637
|
|
631
638
|
if (arguments.length > 0 && arguments[0] instanceof $) {
|
@@ -671,6 +678,10 @@
|
|
671
678
|
el.css('position', origCSS.position);
|
672
679
|
}
|
673
680
|
}
|
681
|
+
|
682
|
+
origClasses = el.data('orig-class');
|
683
|
+
el.attr('class', origClasses);
|
684
|
+
el.removeData('orig-classes');
|
674
685
|
|
675
686
|
el.removeData('expose');
|
676
687
|
el.removeData('expose-z-index');
|
@@ -826,6 +837,8 @@
|
|
826
837
|
$('.joyride-tip-guide, .joyride-modal-bg').remove();
|
827
838
|
clearTimeout(this.settings.automate);
|
828
839
|
this.settings = {};
|
829
|
-
}
|
840
|
+
},
|
841
|
+
|
842
|
+
reflow : function () {}
|
830
843
|
};
|
831
844
|
}(Foundation.zj, this, this.document));
|
data/js/foundation/foundation.js
CHANGED
@@ -29,6 +29,48 @@ if (typeof jQuery === "undefined" &&
|
|
29
29
|
(function ($, window, document, undefined) {
|
30
30
|
'use strict';
|
31
31
|
|
32
|
+
/*
|
33
|
+
matchMedia() polyfill - Test a CSS media
|
34
|
+
type/query in JS. Authors & copyright (c) 2012:
|
35
|
+
Scott Jehl, Paul Irish, Nicholas Zakas.
|
36
|
+
Dual MIT/BSD license
|
37
|
+
|
38
|
+
https://github.com/paulirish/matchMedia.js
|
39
|
+
*/
|
40
|
+
|
41
|
+
window.matchMedia = window.matchMedia || (function( doc, undefined ) {
|
42
|
+
|
43
|
+
"use strict";
|
44
|
+
|
45
|
+
var bool,
|
46
|
+
docElem = doc.documentElement,
|
47
|
+
refNode = docElem.firstElementChild || docElem.firstChild,
|
48
|
+
// fakeBody required for <FF4 when executed in <head>
|
49
|
+
fakeBody = doc.createElement( "body" ),
|
50
|
+
div = doc.createElement( "div" );
|
51
|
+
|
52
|
+
div.id = "mq-test-1";
|
53
|
+
div.style.cssText = "position:absolute;top:-100em";
|
54
|
+
fakeBody.style.background = "none";
|
55
|
+
fakeBody.appendChild(div);
|
56
|
+
|
57
|
+
return function(q){
|
58
|
+
|
59
|
+
div.innerHTML = "­<style media=\"" + q + "\"> #mq-test-1 { width: 42px; }</style>";
|
60
|
+
|
61
|
+
docElem.insertBefore( fakeBody, refNode );
|
62
|
+
bool = div.offsetWidth === 42;
|
63
|
+
docElem.removeChild( fakeBody );
|
64
|
+
|
65
|
+
return {
|
66
|
+
matches: bool,
|
67
|
+
media: q
|
68
|
+
};
|
69
|
+
|
70
|
+
};
|
71
|
+
|
72
|
+
}( document ));
|
73
|
+
|
32
74
|
// add dusty browser stuff
|
33
75
|
if (!Array.prototype.filter) {
|
34
76
|
Array.prototype.filter = function(fun /*, thisp */) {
|
@@ -124,9 +166,8 @@ if (typeof jQuery === "undefined" &&
|
|
124
166
|
window.Foundation = {
|
125
167
|
name : 'Foundation',
|
126
168
|
|
127
|
-
version : '4.
|
169
|
+
version : '4.2.0',
|
128
170
|
|
129
|
-
// global Foundation cache object
|
130
171
|
cache : {},
|
131
172
|
|
132
173
|
init : function (scope, libraries, method, options, response, /* internal */ nc) {
|
@@ -145,7 +186,7 @@ if (typeof jQuery === "undefined" &&
|
|
145
186
|
// set foundation global scope
|
146
187
|
this.scope = scope || this.scope;
|
147
188
|
|
148
|
-
if (libraries && typeof libraries === 'string') {
|
189
|
+
if (libraries && typeof libraries === 'string' && !/reflow/i.test(libraries)) {
|
149
190
|
if (/off/i.test(libraries)) return this.off();
|
150
191
|
|
151
192
|
library_arr = libraries.split(' ');
|
@@ -156,6 +197,8 @@ if (typeof jQuery === "undefined" &&
|
|
156
197
|
}
|
157
198
|
}
|
158
199
|
} else {
|
200
|
+
if (/reflow/i.test(libraries)) args[1] = 'reflow';
|
201
|
+
|
159
202
|
for (var lib in this.libs) {
|
160
203
|
responses.push(this.init_lib(lib, args));
|
161
204
|
}
|
@@ -189,6 +232,9 @@ if (typeof jQuery === "undefined" &&
|
|
189
232
|
this.patch(this.libs[lib]);
|
190
233
|
return this.libs[lib].init.apply(this.libs[lib], args);
|
191
234
|
}
|
235
|
+
else {
|
236
|
+
return function () {};
|
237
|
+
}
|
192
238
|
}.bind(this), lib);
|
193
239
|
},
|
194
240
|
|
@@ -224,12 +270,12 @@ if (typeof jQuery === "undefined" &&
|
|
224
270
|
var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz'.split('');
|
225
271
|
|
226
272
|
if (!length) {
|
227
|
-
|
273
|
+
length = Math.floor(Math.random() * chars.length);
|
228
274
|
}
|
229
275
|
|
230
276
|
var str = '';
|
231
277
|
for (var i = 0; i < length; i++) {
|
232
|
-
|
278
|
+
str += chars[Math.floor(Math.random() * chars.length)];
|
233
279
|
}
|
234
280
|
return str;
|
235
281
|
},
|
@@ -381,9 +427,9 @@ if (typeof jQuery === "undefined" &&
|
|
381
427
|
},
|
382
428
|
|
383
429
|
zj : function () {
|
384
|
-
|
430
|
+
if (typeof Zepto !== 'undefined') {
|
385
431
|
return Zepto;
|
386
|
-
}
|
432
|
+
} else {
|
387
433
|
return jQuery;
|
388
434
|
}
|
389
435
|
}()
|
@@ -6,7 +6,7 @@
|
|
6
6
|
Foundation.libs.magellan = {
|
7
7
|
name : 'magellan',
|
8
8
|
|
9
|
-
version : '4.
|
9
|
+
version : '4.2.0',
|
10
10
|
|
11
11
|
settings : {
|
12
12
|
activeClass: 'active'
|
@@ -54,7 +54,7 @@
|
|
54
54
|
.on('update-position.fndtn.magellan', function(){
|
55
55
|
var $el = $(this);
|
56
56
|
// $el.data("magellan-fixed-position","");
|
57
|
-
|
57
|
+
// $el.data("magellan-top-offset", "");
|
58
58
|
})
|
59
59
|
.trigger('update-position');
|
60
60
|
|
@@ -125,6 +125,8 @@
|
|
125
125
|
|
126
126
|
off : function () {
|
127
127
|
$(this.scope).off('.fndtn.magellan');
|
128
|
-
}
|
128
|
+
},
|
129
|
+
|
130
|
+
reflow : function () {}
|
129
131
|
};
|
130
132
|
}(Foundation.zj, this, this.document));
|
@@ -6,10 +6,12 @@
|
|
6
6
|
Foundation.libs.orbit = {
|
7
7
|
name: 'orbit',
|
8
8
|
|
9
|
-
version: '4.
|
9
|
+
version: '4.2.0',
|
10
10
|
|
11
11
|
settings: {
|
12
12
|
timer_speed: 10000,
|
13
|
+
pause_on_hover: true,
|
14
|
+
resume_on_mouseout: false,
|
13
15
|
animation_speed: 500,
|
14
16
|
bullets: true,
|
15
17
|
stack_on_small: true,
|
@@ -39,6 +41,11 @@
|
|
39
41
|
$.extend(true, self.settings, method);
|
40
42
|
}
|
41
43
|
|
44
|
+
if ($(scope).is('[data-orbit]')) {
|
45
|
+
var scoped_self = $.extend(true, {}, self);
|
46
|
+
scoped_self._init(idx, el);
|
47
|
+
}
|
48
|
+
|
42
49
|
$('[data-orbit]', scope).each(function(idx, el) {
|
43
50
|
var scoped_self = $.extend(true, {}, self);
|
44
51
|
scoped_self._init(idx, el);
|
@@ -119,7 +126,7 @@
|
|
119
126
|
$slides_container.append($slides.first().clone().attr('data-orbit-slide',''));
|
120
127
|
$slides_container.prepend($slides.last().clone().attr('data-orbit-slide',''));
|
121
128
|
// Make the first "real" slide active
|
122
|
-
$slides_container.css('marginLeft', '-100%');
|
129
|
+
$slides_container.css(Foundation.rtl ? 'marginRight' : 'marginLeft', '-100%');
|
123
130
|
$slides.first().addClass(self.settings.active_slide_class);
|
124
131
|
|
125
132
|
self._init_events($slides_container);
|
@@ -161,6 +168,16 @@
|
|
161
168
|
});
|
162
169
|
|
163
170
|
$container
|
171
|
+
.on('mouseenter.fndtn.orbit', function(e) {
|
172
|
+
if (self.settings.pause_on_hover) {
|
173
|
+
self._stop_timer($slides_container);
|
174
|
+
}
|
175
|
+
})
|
176
|
+
.on('mouseleave.fndtn.orbit', function(e) {
|
177
|
+
if (self.settings.resume_on_mouseout) {
|
178
|
+
self._start_timer($slides_container);
|
179
|
+
}
|
180
|
+
})
|
164
181
|
.on('orbit:after-slide-change.fndtn.orbit', function(e, orbit) {
|
165
182
|
var $slide_number = $container.find('.' + self.settings.slide_number_class);
|
166
183
|
|
@@ -6,7 +6,7 @@
|
|
6
6
|
Foundation.libs.reveal = {
|
7
7
|
name: 'reveal',
|
8
8
|
|
9
|
-
version : '4.
|
9
|
+
version : '4.2.0',
|
10
10
|
|
11
11
|
locked : false,
|
12
12
|
|
@@ -14,6 +14,7 @@
|
|
14
14
|
animation: 'fadeAndPop',
|
15
15
|
animationSpeed: 250,
|
16
16
|
closeOnBackgroundClick: true,
|
17
|
+
closeOnEsc: true,
|
17
18
|
dismissModalClass: 'close-reveal-modal',
|
18
19
|
bgClass: 'reveal-modal-bg',
|
19
20
|
open: function(){},
|
@@ -36,7 +37,6 @@
|
|
36
37
|
},
|
37
38
|
|
38
39
|
init : function (scope, method, options) {
|
39
|
-
this.scope = scope || this.scope;
|
40
40
|
Foundation.inherit(this, 'data_options delay');
|
41
41
|
|
42
42
|
if (typeof method === 'object') {
|
@@ -61,9 +61,20 @@
|
|
61
61
|
.off('.fndtn.reveal')
|
62
62
|
.on('click.fndtn.reveal', '[data-reveal-id]', function (e) {
|
63
63
|
e.preventDefault();
|
64
|
+
|
64
65
|
if (!self.locked) {
|
66
|
+
var element = $(this),
|
67
|
+
ajax = element.data('reveal-ajax');
|
68
|
+
|
65
69
|
self.locked = true;
|
66
|
-
|
70
|
+
|
71
|
+
if (typeof ajax === 'undefined') {
|
72
|
+
self.open.call(self, element);
|
73
|
+
} else {
|
74
|
+
var url = ajax === true ? element.attr('href') : ajax;
|
75
|
+
|
76
|
+
self.open.call(self, element, {url: url});
|
77
|
+
}
|
67
78
|
}
|
68
79
|
})
|
69
80
|
.on('click.fndtn.reveal touchend.click.fndtn.reveal', this.close_targets(), function (e) {
|
@@ -85,12 +96,26 @@
|
|
85
96
|
.on('closed.fndtn.reveal', '.reveal-modal', this.settings.closed)
|
86
97
|
.on('closed.fndtn.reveal', '.reveal-modal', this.close_video);
|
87
98
|
|
99
|
+
$( 'body' ).bind( 'keyup.reveal', function ( event ) {
|
100
|
+
var open_modal = $('.reveal-modal.open'),
|
101
|
+
settings = $.extend({}, self.settings, self.data_options(open_modal));
|
102
|
+
if ( event.which === 27 && settings.closeOnEsc) { // 27 is the keycode for the Escape key
|
103
|
+
open_modal.foundation('reveal', 'close');
|
104
|
+
}
|
105
|
+
});
|
106
|
+
|
88
107
|
return true;
|
89
108
|
},
|
90
109
|
|
91
|
-
open : function (target) {
|
110
|
+
open : function (target, ajax_settings) {
|
92
111
|
if (target) {
|
93
|
-
|
112
|
+
if (typeof target.selector !== 'undefined') {
|
113
|
+
var modal = $('#' + target.data('reveal-id'));
|
114
|
+
} else {
|
115
|
+
var modal = $(this.scope);
|
116
|
+
|
117
|
+
ajax_settings = target;
|
118
|
+
}
|
94
119
|
} else {
|
95
120
|
var modal = $(this.scope);
|
96
121
|
}
|
@@ -108,14 +133,36 @@
|
|
108
133
|
if (open_modal.length < 1) {
|
109
134
|
this.toggle_bg(modal);
|
110
135
|
}
|
111
|
-
|
112
|
-
|
136
|
+
|
137
|
+
if (typeof ajax_settings === 'undefined' || !ajax_settings.url) {
|
138
|
+
this.hide(open_modal, this.settings.css.close);
|
139
|
+
this.show(modal, this.settings.css.open);
|
140
|
+
} else {
|
141
|
+
var self = this,
|
142
|
+
old_success = typeof ajax_settings.success !== 'undefined' ? ajax_settings.success : null;
|
143
|
+
|
144
|
+
$.extend(ajax_settings, {
|
145
|
+
success: function (data, textStatus, jqXHR) {
|
146
|
+
if ( $.isFunction(old_success) ) {
|
147
|
+
old_success(data, textStatus, jqXHR);
|
148
|
+
}
|
149
|
+
|
150
|
+
modal.html(data);
|
151
|
+
$(modal).foundation('section', 'reflow');
|
152
|
+
|
153
|
+
self.hide(open_modal, self.settings.css.close);
|
154
|
+
self.show(modal, self.settings.css.open);
|
155
|
+
}
|
156
|
+
});
|
157
|
+
|
158
|
+
$.ajax(ajax_settings);
|
159
|
+
}
|
113
160
|
}
|
114
161
|
},
|
115
162
|
|
116
163
|
close : function (modal) {
|
117
164
|
|
118
|
-
var modal = modal
|
165
|
+
var modal = modal && modal.length ? modal : $(this.scope),
|
119
166
|
open_modals = $('.reveal-modal.open');
|
120
167
|
|
121
168
|
if (open_modals.length > 0) {
|
@@ -245,7 +292,7 @@
|
|
245
292
|
if (iframe.length > 0) {
|
246
293
|
iframe.attr('data-src', iframe[0].src);
|
247
294
|
iframe.attr('src', 'about:blank');
|
248
|
-
video.
|
295
|
+
video.hide();
|
249
296
|
}
|
250
297
|
},
|
251
298
|
|
@@ -257,8 +304,12 @@
|
|
257
304
|
var data_src = iframe.attr('data-src');
|
258
305
|
if (typeof data_src === 'string') {
|
259
306
|
iframe[0].src = iframe.attr('data-src');
|
307
|
+
} else {
|
308
|
+
var src = iframe[0].src;
|
309
|
+
iframe[0].src = undefined;
|
310
|
+
iframe[0].src = src;
|
260
311
|
}
|
261
|
-
video.show()
|
312
|
+
video.show();
|
262
313
|
}
|
263
314
|
},
|
264
315
|
|
@@ -272,6 +323,8 @@
|
|
272
323
|
|
273
324
|
off : function () {
|
274
325
|
$(this.scope).off('.fndtn.reveal');
|
275
|
-
}
|
326
|
+
},
|
327
|
+
|
328
|
+
reflow : function () {}
|
276
329
|
};
|
277
330
|
}(Foundation.zj, this, this.document));
|
@@ -6,7 +6,7 @@
|
|
6
6
|
Foundation.libs.section = {
|
7
7
|
name: 'section',
|
8
8
|
|
9
|
-
version : '4.
|
9
|
+
version : '4.2.0',
|
10
10
|
|
11
11
|
settings : {
|
12
12
|
deep_linking: false,
|
@@ -44,10 +44,12 @@
|
|
44
44
|
$(this.scope)
|
45
45
|
.on('click.fndtn.section', '[data-section] .title, [data-section] [data-section-title]', function (e) {
|
46
46
|
var $this = $(this),
|
47
|
-
section = $this.closest(self.settings.
|
47
|
+
section = $this.closest(self.settings.region_selector);
|
48
48
|
|
49
|
-
self.
|
50
|
-
|
49
|
+
if (section.children(self.settings.content_selector).length > 0) {
|
50
|
+
self.toggle_active.call(this, e, self);
|
51
|
+
self.reflow();
|
52
|
+
}
|
51
53
|
});
|
52
54
|
|
53
55
|
$(window)
|
@@ -197,7 +199,7 @@
|
|
197
199
|
self.position_titles($this);
|
198
200
|
|
199
201
|
if ( (self.is_horizontal_nav($this) && !self.small($this))
|
200
|
-
|| self.is_vertical_tabs($this)) {
|
202
|
+
|| self.is_vertical_tabs($this) && !self.small($this)) {
|
201
203
|
self.position_content($this);
|
202
204
|
} else {
|
203
205
|
self.position_content($this, false);
|
@@ -229,7 +231,6 @@
|
|
229
231
|
var hash = window.location.hash.substring(1),
|
230
232
|
sections = $('[data-section]'),
|
231
233
|
self = this;
|
232
|
-
|
233
234
|
sections.each(function () {
|
234
235
|
var section = $(this),
|
235
236
|
settings = $.extend({}, self.settings, self.data_options(section));
|
@@ -239,12 +240,21 @@
|
|
239
240
|
.children(self.settings.region_selector)
|
240
241
|
.attr('style', '')
|
241
242
|
.removeClass('active');
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
243
|
+
|
244
|
+
var hash_regions = regions.map(function () {
|
245
|
+
var content = $(self.settings.content_selector, this),
|
246
|
+
content_slug = content.data('slug');
|
247
|
+
|
248
|
+
if (new RegExp(content_slug, 'i').test(hash))
|
249
|
+
return content;
|
250
|
+
});
|
251
|
+
|
252
|
+
|
253
|
+
var count = hash_regions.length;
|
254
|
+
|
255
|
+
for (var i = count - 1; i >= 0; i--) {
|
256
|
+
$(hash_regions[i]).parent().addClass('active');
|
257
|
+
}
|
248
258
|
}
|
249
259
|
});
|
250
260
|
},
|
@@ -310,6 +320,7 @@
|
|
310
320
|
|
311
321
|
title_width = self.outerWidth(title);
|
312
322
|
content_width = self.outerWidth(section) - title_width;
|
323
|
+
|
313
324
|
if (content_width < content_min_width) {
|
314
325
|
content_min_width = content_width;
|
315
326
|
}
|
@@ -335,9 +346,6 @@
|
|
335
346
|
content.css('maxWidth', content_min_width - 2);
|
336
347
|
});
|
337
348
|
|
338
|
-
// Adjust the outer section container width to match
|
339
|
-
// the width of the title and content
|
340
|
-
section.css('maxWidth', title_width + content_min_width);
|
341
349
|
} else {
|
342
350
|
regions.each(function () {
|
343
351
|
var region = $(this),
|
@@ -356,9 +364,9 @@
|
|
356
364
|
|
357
365
|
// temporary work around for Zepto outerheight calculation issues.
|
358
366
|
if (typeof Zepto === 'function') {
|
359
|
-
section.height(this.outerHeight(titles
|
367
|
+
section.height(this.outerHeight($(titles[0])));
|
360
368
|
} else {
|
361
|
-
section.height(this.outerHeight(titles
|
369
|
+
section.height(this.outerHeight($(titles[0])) - 2);
|
362
370
|
}
|
363
371
|
}
|
364
372
|
}
|
@@ -383,6 +391,7 @@
|
|
383
391
|
|
384
392
|
small : function (el) {
|
385
393
|
var settings = $.extend({}, this.settings, this.data_options(el));
|
394
|
+
|
386
395
|
if (this.is_horizontal_tabs(el)) {
|
387
396
|
return false;
|
388
397
|
}
|