2015-08-14 88 views
0

我已經構建了一個簡單的手機nav,它在一定程度上起作用,但是一旦您找到實際進入頁面的鏈接,運行這些功能的JavaScript將阻止該操作發生,這有意義嗎?Mobile Nav,通過JavaScript點擊

我有一個prevent defaulta標籤來顯示其子菜單和作爲這一結果的頁面鏈接實際上不是點擊,這裏的jsfiddle

$('.mobile-nav ul.parent-level > li.has-submenu').on('click',function(e){ 
    $('ul.level-one').css('left', 0); 
    e.preventDefault(); 
}); 
$('.mobile-nav ul.level-one > li').on('click',function(e){ 
    if(!$(this).hasClass('back-title')){ 
     $(this).find('ul.level-two').css('left', 0); 
    } 
    e.preventDefault(); 
}); 
$('.mobile-nav li.back-title').on('click',function(e){ 
    //alert('go back'); 
    $(this).parent().css('left', '100vw'); 
    e.preventDefault(); 
    e.stopPropagation(); 
}); 

回答

1

你需要的preventDefault()?你實際上在li上有預防的默認值,而不是標籤,這實際上不會做任何不利的事情,你需要阻止它嗎?

我已經刪除了

e.preventDefault();

線和子菜單中的鏈接現在變成可點擊的 - 看似與菜單的其餘部分沒有負面影響。看看你是否同意...

http://jsfiddle.net/rzvwb113/3/