Commit 4b5eb3c 1 parent d967553 commit 4b5eb3c Copy full SHA for 4b5eb3c
File tree 2 files changed +28
-1
lines changed
2 files changed +28
-1
lines changed Original file line number Diff line number Diff line change @@ -187,7 +187,12 @@ class Tab {
187
187
element . classList . add ( CLASS_NAME_SHOW )
188
188
}
189
189
190
- if ( element . parentNode && $ ( element . parentNode ) . hasClass ( CLASS_NAME_DROPDOWN_MENU ) ) {
190
+ let parent = element . parentNode
191
+ if ( parent && parent . nodeName === 'LI' ) {
192
+ parent = parent . parentNode
193
+ }
194
+
195
+ if ( parent && $ ( parent ) . hasClass ( CLASS_NAME_DROPDOWN_MENU ) ) {
191
196
const dropdownElement = $ ( element ) . closest ( SELECTOR_DROPDOWN ) [ 0 ]
192
197
193
198
if ( dropdownElement ) {
Original file line number Diff line number Diff line change @@ -345,6 +345,28 @@ $(function () {
345
345
assert . notOk ( $tabs . find ( 'li:last-child .dropdown-menu a:first-child' ) . hasClass ( 'active' ) )
346
346
} )
347
347
348
+ QUnit . test ( 'should support li > .dropdown-item' , function ( assert ) {
349
+ assert . expect ( 2 )
350
+ var tabsHTML = [
351
+ '<ul class="nav nav-tabs">' ,
352
+ ' <li class="nav-item"><a class="nav-link active" href="#home" data-toggle="tab">Home</a></li>' ,
353
+ ' <li class="nav-item"><a class="nav-link" href="#profile" data-toggle="tab">Profile</a></li>' ,
354
+ ' <li class="nav-item dropdown">' ,
355
+ ' <a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#">Dropdown</a>' ,
356
+ ' <ul class="dropdown-menu">' ,
357
+ ' <li><a class="dropdown-item" href="#dropdown1" id="dropdown1-tab" data-toggle="tab">@fat</a></li>' ,
358
+ ' <li><a class="dropdown-item" href="#dropdown2" id="dropdown2-tab" data-toggle="tab">@mdo</a></li>' ,
359
+ ' </ul>' ,
360
+ ' </li>' ,
361
+ '</ul>'
362
+ ] . join ( '' )
363
+ var $tabs = $ ( tabsHTML ) . appendTo ( '#qunit-fixture' )
364
+
365
+ $tabs . find ( '.dropdown-item' ) . trigger ( 'click' )
366
+ assert . ok ( $tabs . find ( '.dropdown-item' ) . hasClass ( 'active' ) )
367
+ assert . notOk ( $tabs . find ( '.nav-link:not(.dropdown-toggle)' ) . hasClass ( 'active' ) )
368
+ } )
369
+
348
370
QUnit . test ( 'Nested tabs' , function ( assert ) {
349
371
assert . expect ( 2 )
350
372
var done = assert . async ( )
You can’t perform that action at this time.
0 commit comments