我已经看到了这个问题,我已经实现了我找到的多种不同的解决方案,但似乎没有任何效果。我有一个bootstrap可折叠菜单,其中包含子菜单。单击子菜单链接时,它只关闭子菜单,不会重定向到链接。我已经实现了以下脚本,我原以为这样做了:
$('.dropdown-toggle').click(function(e) {
e.preventDefault();
setTimeout($.proxy(function() {
if ('ontouchstart' in document.documentElement) {
$(this).siblings('.dropdown-backdrop').off().remove();
}
}, this), 0);
});
此脚本允许子菜单在触摸屏设备上下拉,但链接不起作用。我尝试删除e.preventDefault();
行,但这似乎也不起作用。
如何让我的子菜单链接在移动触摸屏上工作?它们可以在桌面上正常工作,当我按住触摸屏上的链接时,我可以在新选项卡中打开正确的链接,但只需点击它就不起作用。
编辑:以下是我的HTML文章:
<div class="span3">
<li class="dropdown-submenu">
<a href="#" tabindex='-1' class="dropdown-toggle nav-header" data-toggle="dropdown"><i class='icon-time'></i>Time Clock Management</a>
<ul class='dropdown-menu'>
<li><a href="#">Labor Scheduling</a></li>
<li><a href="/change-manager/">Change Manager</a></li>
</ul>
</li>
</div>
答案 0 :(得分:10)
我通过添加以下javascript修复了此问题:
$('.dropdown-submenu ul.dropdown-menu li a').on('touchstart', function(e) {
e.preventDefault();
window.location.href = $(this).attr('href');
})