如何删除 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>
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" 场景的移动设备上遇到问题。
我在我的标记中使用 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>
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" 场景的移动设备上遇到问题。