0

良い一日

何らかの理由で、ブラウザーは私の addClass および toggleClass jquery 呼び出しを無視しています:

HTML

<div id="menuNav" class="row-fluid">
    <div id="menuNavSub" class="span12">
        <ul>                         
            <li id="homeNav"><a href="index.aspx"><img src="images/homeNav2.png" /></a></li>
            <li id="galleryNav"><a href="galleries.aspx" class="block"><img src="images/homeNav2.png" /></a></li>
            <li id="aboutNav"><a href="about.aspx"><img src="images/homeNav2.png" /></a></li>               
            <li id="contactNav"><a href="contact.aspx"><img src="images/homeNav2.png" /></a></li>
        </ul>              
    </div>         
</div>

CSS:

.activeNavHome1 {
    background-position: -200px center;
}

.activeNavHome2{
    background: url('/images/homeNavSmall.png') no-repeat left center;
    background-position: -150px center;
}

jQuery:

    $('#homeNav').addClass('activeNavHome1');

    if ($(window).width() < 1080) {
       $('#homeNav').toggleClass('activeNavHome2');
     }

注: 私は使用してASP.NETおり、jQuery コードは私のindex.aspxファイルに含まれています。HTML はマスター ファイルに含まれています。

しかし、私が使用するとき

$('#homeNav').css('background-position', '-200px center')

できます。addClassおよびtoggleclassコマンドでクラスが割り当てられないのはなぜですか? CSS でスペルミスを犯したことはありません。

4

1 に答える 1

1

代わりに2つのクラスを渡しi think you didn't referenced a jQuery libraryます。または、doc ready不足している可能性があります。

<script>
  $(function(){ // <-----------------------------you are missing this
     $('#homeNav').addClass('activeNavHome1');
     if ($(window).width() < 1080) {
       $('#homeNav').toggleClass('activeNavHome1 activeNavHome2');
     }
   });
 </script>

ノート:

このスクリプトの前にjQueryをロードしていることを確認してください。

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
于 2013-02-19T07:19:22.973 に答える