0

ただし、ウェイポイントライブラリを使用すると、一般的なjqueryとjavascriptの理解が不十分であるため、問題はスクリプトに関連していないようです。

この行では、属性 href が特定の値であるすべてのアンカーを選択し、クラスを追加または削除します。

$('a[href="' + $(this).attr('id') + '"]').toggleClass("marca-menu", direction === 'down');

しかし、何も起こりません。

コード、および以下のフィドル。

JS:

 $(document).ready(function() {   
   $('#container section').each(function() {            
     $(this).waypoint(function(direction) {
       $('a[href="' + $(this).attr('id') + '"]').toggleClass("marca-menu", direction === 'down');
     });
   });
});

HTML:

<nav class="main-menu">
<ul>
 <li><a href="#slide3" target="_self">plimplim</a></li>
 <li><a href="#slide4" target="_self">plimplomm</a></li>
 <li><a href="#slide5" target="_self">plimplumm</a></li>
</ul>
</nav>

<section id="slide3">
  <h1>bababaadasda</h1>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
</section>
<section id="slide4">
 <h1>SLIDE 4</h1>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
</section>
<section id="slide5">
 <h1>SLIDE 5</h1>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
    <p>asdsadasdsad</p>
</section>

CSS: nav { display:block; 位置: 固定; 幅: 100%; 背景: 赤; }

.marca-menu {
    background-color: blue;
}

ここで確認できます:

http://jsfiddle.net/talofo/Bkws7/

私は何を間違っていますか?

4

1 に答える 1

2

投稿された html を見ませんでした。それを使用してください。

$('a[href="#' + this.id + '"]').toggleClass("marca-menu", direction === 'down');
于 2013-07-26T11:17:53.133 に答える