|
37 | 37 | ' <div class="panel-body js-tabcollapse-panel-body">' + |
38 | 38 | ' </div>' + |
39 | 39 | ' </div>' + |
40 | | - '</div>' |
41 | | - |
| 40 | + '</div>'; |
42 | 41 | } |
43 | 42 | }; |
44 | 43 |
|
|
82 | 81 | }); |
83 | 82 |
|
84 | 83 | if (!$('li').hasClass('active')) { |
85 | | - $('li').first().addClass('active') |
| 84 | + $('li').first().addClass('active'); |
86 | 85 | } |
87 | 86 |
|
88 | 87 | var $panelBodies = this.$accordion.find('.js-tabcollapse-panel-body'); |
|
118 | 117 | return $tabContents; |
119 | 118 | }; |
120 | 119 |
|
| 120 | + TabCollapse.prototype.tabSync = function (event) { |
| 121 | + var tabId = event.data.tabCollapse.$accordion.find('.panel-collapse.in').attr('id'); |
| 122 | + if (tabId === undefined || tabId === null) { |
| 123 | + return; |
| 124 | + } |
| 125 | + tabId = tabId.substring(0, tabId.length - 9); //remove -collapse from identifier |
| 126 | + |
| 127 | + event.data.tabCollapse.getTabContentElement().find('.active').removeClass('active'); |
| 128 | + $('#' + tabId).addClass('active'); |
| 129 | + } |
| 130 | + |
121 | 131 | TabCollapse.prototype.showAccordion = function(){ |
122 | 132 | this.$tabs.trigger($.Event('show-accordion.bs.tabcollapse')); |
123 | 133 |
|
|
130 | 140 | view.$accordion.append(view._createAccordionGroup(view.$accordion.attr('id'), $heading.detach())); |
131 | 141 | }); |
132 | 142 |
|
133 | | - if(this.options.updateLinks) { |
| 143 | + if (this.options.updateLinks) { |
134 | 144 | var parentId = this.$accordion.attr('id'); |
135 | 145 | var $selector = this.$accordion.find('.js-tabcollapse-panel-body'); |
136 | 146 | $selector.find('[data-toggle="tab"], [data-toggle="pill"]').each(function() { |
|
204 | 214 | this.$tabs.after(this.$accordion); |
205 | 215 | this.$tabs.addClass(this.options.tabsClass); |
206 | 216 | this.getTabContentElement().addClass(this.options.tabsClass); |
| 217 | + if (this.options.syncTabs) { |
| 218 | + this.$accordion.on('shown.bs.collapse', { tabCollapse: this }, this.tabSync); |
| 219 | + } |
207 | 220 | }; |
208 | 221 |
|
209 | 222 | TabCollapse.prototype._createAccordionGroup = function(parentId, $heading){ |
|
0 commit comments