4

次の 3 つの項目を並べて表示しています。

<div class="page-header">
    <h1 style="line-height:0">Title</h1>
        <ul style="float: right; list-style-type: none;">
    <li><a href="http://test1.com">T1</a></li>
    <li><a href="http://test2.com">T2</a></li>
    <li><a href="#">T3</a></li>
        </ul>
</div>

ユーザーがクリックしたアイテムを強調表示したい(例:T1)。stackoverflow に質問、タグ、ユーザーなどのブロックがあるのと似たようなものです。

4

1 に答える 1

4

これをチェックしてください:

// Start up jQuery
$(document).ready(function() {
  $('a.nav').click(function(e) {
    e.preventDefault();
    
    $('a.nav').removeClass('current_page');
    
    // Do an ajax call instead
    $('#response').html($(this).attr("href"));

    $(this).addClass('current_page');
  });
});
* {
  font-family: Verdana;
  font-size: 13px;
}
div#wrapper {
  margin: 20px;
}
.current_page {
  color: red;
  font-weight: bold;
  text-decoration: none;
}
#response {
  width: 300px;
  height: 200px;
  padding: 5px;
  border: 1px dotted #777;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="wrapper">
  <a class="nav" href="http://www.google.com">Google</a> |
  <a class="nav" href="http://www.facebook.com">Facebook</a> |
  <a class="nav" href="http://www.stackoverflow.com">Stackoverflow</a> |
  <a class="nav" href="http://www.myspace.com">Myspace</a> |
  <a class="nav" href="http://www.craigslist.com">Craigslist</a>

  <p>&nbsp;</p>
  <p>Response:</p>

  <div id="response"></div>
</div>

したがって、基本的には、.current_pageその MEMORY ID を DOM にインプリントするアクティブ化されたアンカー タグにクラスをプッシュします。次に、ページ内にコンテンツを挿入する ajax 呼び出しを実装します。

于 2012-06-19T22:01:00.537 に答える