2016-12-19 11 views
0

私はナビゲーションバーのテンプレートをダウンロードして、私が望むように動作させるために苦労しています。見出しをクリックすると、さらにリンクするサブメニューが開きます。私はすべての見出しがサブメニューを開くことを望んでいない、私はちょうどリンクI.Eの家になるいくつかしたい。jsを使用しているNavbar。リンクが動作しない

ホームをクリックすると、サブメニューを開くようにホームが強調表示され、リンクには移動しません。私はこれがjsの問題だと思う。 、

var cbpHorizontalMenu=(function(){var b=$("#cbp-hrmenu > ul > li"),g=b.children("a"),c=$("body"),d=-1;function f(){g.on("click",a);b.on("click",function(h){h.stopPropagation()})}function a(j){if(d!==-1){b.eq(d).removeClass("cbp-hropen")}var i=$(j.currentTarget).parent("li"),h=i.index();if(d===h){i.removeClass("cbp-hropen");d=-1}else{i.addClass("cbp-hropen");d=h;c.off("click").on("click",e)}return false}function e(h){b.eq(d).removeClass("cbp-hropen");d=-1}return{init:f}})(); 

答えて

0

は、あなただけのリンクがある項目を除外したい:私は、これは問題なく、変更することがわからないの原因のjsであると考えてい

<nav id="cbp-hrmenu" class="cbp-hrmenu"> 

        <ul> 
           <li> 
          <a href="home.php">Home</a> 

         <li> 
          <a href="#">Club Information</a> 
          <div class="cbp-hrsub"> 
           <div class="cbp-hrsub-inner"> 
            <div> 
             <h4>About the Club</h4> 
             <ul> 
              <li><a href="about.php">About IDMC</a></li> 
              <li><a href="location.php">Where to Find Us</a></li> 
              <li><a href="whatwedo.php">What We Do</a></li> 
             </ul> 
             <h4>Contacting Us</h4> 
             <ul> 
              <li><a href="contactus.php">General Information</a></li> 
             </ul> 
            </div></div><!-- /cbp-hrsub-inner --> 
          </div><!-- /cbp-hrsub --> 
         </li> 
        </ul> 
       </nav> 

:以下

はhtmlですドロップダウンではありません。したがって、サブ項目を持たないリンクに linkのクラスを追加します。 <a href="home.php" class="link">Home</a>

次に、JavaScriptを次のように変更します。コードをリンククラスのリンクで実行しないでください。

var cbpHorizontalMenu=(function(){ 
    var b=$("#cbp-hrmenu > ul > li"), g=b.children("a").not($('.link')), c=$("body"), d=-1; 
    function f(){ 
    g.on("click",a); 
    b.on("click", function(h){ 
     h.stopPropagation(); 
    }) 
    } 
    function a(j){ 
    if(d!==-1){ 
     b.eq(d).removeClass("cbp-hropen"); 
    } 
    var i=$(j.currentTarget).parent("li"), h=i.index(); 
    if(d===h){ 
     i.removeClass("cbp-hropen"); 
     d=-1 
    }else{ 
     i.addClass("cbp-hropen"); 
     d=h; 
     c.off("click").on("click",e); 
    } 
    return false 
    } 
    function e(h){ 
    b.eq(d).removeClass("cbp-hropen"); 
    d=-1 
    } 
    return {init:f} 
})(); 
関連する問題