如何删除 Bootstrap 下拉列表的 preventDefault 行为

How to remove preventDefault behaviour of Bootstrap dropdown

我在我的标记中使用 Bootstrap 3 下拉菜单。但除了默认行为外,如果我将鼠标悬停在元素上,它应该会弹出。所以我创建了一个小脚本:

jQ('.dropdown').hover(function() {
    jQ(this).find('.dropdown-menu').stop(true, true).delay(50).fadeIn();
}, function() {
    jQ(this).find('.dropdown-menu').stop(true, true).delay(50).fadeOut();
});

工作正常。但出于某种原因,当我想将第一个项目(触发悬停)作为 link 时,Bootstrap 下拉菜单阻止重定向到另一个页面。我点击 link 没有任何反应,它只是附加了一个 class .open。如果我右键单击 select open destination in new tab,我只能打开 link。我该如何解决这个问题?

谢谢

只需从按钮中删除 data-toggle="dropdown" 属性(我想它是锚标记):

<a class="btn btn-default dropdown-toggle" href="http://somewhere" target="_blank" id="dropdownMenu1" >
    Dropdown
    <span class="caret"></span>
</a>

JSFiddle


data-toggle 属性是 bootstrap 的指示符,表示事件应该绑定到元素,取决于属性值:

data-toggle="dropdown"
data-toggle="tooltip"
data-toggle="modal"
data-toggle="popover"
data-toggle="tab"
data-toggle="collapse"
data-toggle="button"

注意: 您可能在 "click open link" 场景的移动设备上遇到问题。