0

以下の html と関連コードを見つけてください。

<div class="lang">
            <a href="Text A url" class="uk lclick">Text A</a>
        </div>
        <div id="lang_menu" class="small_menu">
            <ul class="lang-list">
                <li><a href="Text B url" class="de">Text B</a></li>
                <li class="no-sep"><a href="Text C url" class="tr">Text C</a></li>
            </ul>
            <div class="small_menu_bottom">
            </div>
        </div>
​
  1. ユーザーは、アンカー タグ 'Text A' を持つ div 'lang' をクリックします。このアンカー タグをクリックすると、ユーザーは特定のページにリダイレクトされます。

  2. ユーザーが 'lang' div をクリックすると、slideToggle() 関数が実行され、div 'langmenu' がユーザーに表示されます。(これによりドロップダウン効果が得られます)

  3. この 'langmenu' div には、さらに 2 つのアンカー タグ (テキスト B とテキスト C) があります。上記の HTML コードを見つけてください。

  4. ユーザーがいずれかのアンカー タグをクリックすると、アンカー タグの href プロパティに従って、ページがそれぞれの URL にリダイレクトされます。

  5. この問題は、ユーザーが選択したアンカー タグ、つまり、'Text B' または 'Text c' に関係なく、ページがリダイレクトされた後、'Text A' のみがドロップダウンに表示されます。選択したアンカー タグのテキストが表示される場所

この問題を解決する方法を教えてください。

jquery と css を見つけてください。

.lang{background:url(someurl) no-repeat; display:block; padding:0 9px; width:145px;height:22px; cursor:pointer; position:absolute; top:24px; left:188px;}

.lang-list li a.uk{ background:url(someurl) left center no-repeat;}
.lang-list li a.de{ background:url(someurl) left center no-repeat;}
.lang-list li a.tr{ background:url(someurl) left center no-repeat;}

#lang_menu{position:absolute; top:48px; left:188px; width:159px;display:none; cursor:pointer; z-index:100;}

.small_menu, .small_menu_bottom{background:url(someurl) 0 0 no-repeat; width:159px;}
.small_menu_bottom{clear:both; background-position:-161px 0; height:10px; display:block; margin-bottom:-10px;}

.lang-list li{height:25px; line-height:25px; background:url(someurl) center bottom repeat-x; margin:0 1px;padding-left:15px;}

li.no-sep{ background:none;height:15px; line-height:15px; padding-top:8px;}

私は jquery をあまり使用しないので、この問題を解決するのは難しいと感じています。簡単な修正かもしれませんので、お知らせください。

$(document).ready(function () {
    $('.lang').click(function () {
        $("#lang_menu").slideToggle();
    });
});​
4

1 に答える 1

0

試す :

$(document).ready(function () { $('.lang > a').click(function () { $("#lang_menu").slideToggle(); }); }); </p>

コードの時点で、 #lang_menu はクリック リスナーの一部です。ネストされている場合

于 2012-10-16T11:09:38.313 に答える