jac*_*ndc 19 javascript css jquery twitter-bootstrap
我需要通过JavaScript打开一个Bootstrap下拉菜单.这个答案建议添加和删除open课程,但是当我尝试时,没有任何反应.添加不同的类工作正常.Bootstrap阻止我这样做吗?
HTML
<input type="button" value="Add Classes" />
<div class="dropdown">
<a data-toggle="dropdown" href="#">Dropdown Trigger</a>
<div class="dropdown-menu">Dropdown Content</div>
</div>
Run Code Online (Sandbox Code Playgroud)
JS
$('input').click(function () {
$('.dropdown').addClass('open');
$('.dropdown').addClass('test-class');
});
Run Code Online (Sandbox Code Playgroud)
Phi*_*hil 35
您的主要问题是您没有停止点击事件传播到document.Bootstrap在document关闭下拉列表时设置一个事件监听器.
$('input').on('click', function (e) {
e.stopPropagation();
$(this).next('.dropdown').find('[data-toggle=dropdown]').dropdown('toggle');
});
Run Code Online (Sandbox Code Playgroud)
jsFiddle - http://jsfiddle.net/8p6Wd/2/