mirror of
https://github.com/twbs/bootstrap.git
synced 2025-10-18 00:04:10 -04:00
Dropdowns: Skip .disabled
instead of .divider
on keydown event
Fixes #15147. Closes #15520 by merging it.
This commit is contained in:
parent
5debbec59f
commit
b395f3526e
@ -72,7 +72,7 @@
|
|||||||
return $this.trigger('click')
|
return $this.trigger('click')
|
||||||
}
|
}
|
||||||
|
|
||||||
var desc = ' li:not(.divider):visible a'
|
var desc = ' li:not(.disabled):visible a'
|
||||||
var $items = $parent.find('[role="menu"]' + desc + ', [role="listbox"]' + desc)
|
var $items = $parent.find('[role="menu"]' + desc + ', [role="listbox"]' + desc)
|
||||||
|
|
||||||
if (!$items.length) return
|
if (!$items.length) return
|
||||||
|
@ -314,4 +314,25 @@ $(function () {
|
|||||||
$dropdown.click()
|
$dropdown.click()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
QUnit.test('should skip disabled element when using keyboard navigation', function (assert) {
|
||||||
|
var dropdownHTML = '<ul class="tabs">'
|
||||||
|
+ '<li class="dropdown">'
|
||||||
|
+ '<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown</a>'
|
||||||
|
+ '<ul class="dropdown-menu" role="menu">'
|
||||||
|
+ '<li class="disabled"><a href="#">Disabled link</a></li>'
|
||||||
|
+ '<li><a href="#">Another link</a></li>'
|
||||||
|
+ '</ul>'
|
||||||
|
+ '</li>'
|
||||||
|
+ '</ul>'
|
||||||
|
var $dropdown = $(dropdownHTML)
|
||||||
|
.appendTo('#qunit-fixture')
|
||||||
|
.find('[data-toggle="dropdown"]')
|
||||||
|
.bootstrapDropdown()
|
||||||
|
.click()
|
||||||
|
|
||||||
|
$dropdown.trigger($.Event('keydown', { which: 40 }))
|
||||||
|
$dropdown.trigger($.Event('keydown', { which: 40 }))
|
||||||
|
|
||||||
|
assert.ok(!$(document.activeElement).parent().is('.disabled'), '.disabled is not focused')
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
Loading…
x
Reference in New Issue
Block a user