0

サブメニューのあるメニューを持っています..このメニューはデータベースから来ています. メイン メニューの 1 つを鳴らすと、サブ メニューが開きます。サブ メニューのリンクをクリックすると、サブ メニューが開いたままになり、選択したサブ メニューが選択されたままになります。しかし、問題は、サブメニューリンクをクリックすると..関連するリンクに到達した..しかし、サブメニューが非表示になることです。私はそうするためにJ-queryを使用しようとしました..しかし、新しいページをロードするために失敗しました...そうする方法を教えてください..今、私はこれのjqueryまたはajaxソリューションを使用したいです

4

3 に答える 3

1

問題を読んだ後、これが役立つと思います。

  • jQuery を使用します (jQuery ライブラリを含む)。
  • メインメニューとサブメニューを選択したままにしたいページで、次の操作を行います。

    1. メインメニューとサブメニューのIDを取得し、jQueryで切り替えます。
 $("#mainmenuid").toggle('fast');
 $("#submenu").toggle('fast');

または任意の jQuery イベントを適用できます。

注:その特定のページ ページのヘッダー領域に jQuery を追加します。

于 2013-02-16T10:17:33.680 に答える
0

あなたはこれを試すことができます:

$('#menu > li > a').click(function(){
    if($(this).siblings('ul').length > 0){
       $(this).siblings('ul').show();
       return false; // This will do what you want.
    }
});

兄弟の「ul」要素がある場合、これはリンクを許可しません。それ以外の場合は、hrefに移動します。

ここでテスト:http: //jsfiddle.net/SXKG4/2/

于 2013-02-16T10:25:24.930 に答える
0

loadajax ソリューションが必要な場合は、試すことができます。

これがhtmlであるとします:

<ul id='main-menu'>
    <li><a href='pages/home.html'>Home</a></li>
    <li><a href='pages/about.html'>About us</a>
         <ul class='sub-menu'>           /*initially hide it display:none;*/
             <li><a href='pages/subpage1.html'>sub link 1</a></li>
             <li><a href='pages/subpage2.html'>sub link 2</a></li>
         </ul>
    </li>
</ul>

<div id='content'></div> <!--here you have to put page contents-->

次に、この jQuery を使用できます。

 $(function(){
    $('#main-menu li').click(function(){
       var page = $(this).find('a').attr('href');
       $('#content').load(page);
       $('.submenu',this).toggle();
    });

     $('#main-menu a').click(function(e){
         e.preventDefault(); // <-----this stops page to navigate to link href
     });

    $('.submenu li').click(function(ev){
       ev.stopPropagation(); //<----stops the event bubbling to the parent
    });
 });
于 2013-02-16T10:47:10.277 に答える