0

jQuery を使用して特定の要素にクラスを追加しようとしています。私はブロガーを使っていて、編集できるテンプレートは 1 つしかないので必要です。私はスクリプトを見つけるだけで動作させていますが、さらに追加しようとすると動作しません。

たとえば、これは機能します:

switch (window.location.pathname) {
        case '/':
          $('.nav-home').addClass('current');
          break;
        case '/p/about.html':
          $('.nav-about').addClass('current');
          break;
        case '/search/blog':
          $('.nav-blog').addClass('current');
          break;

これは壊れます:

switch (window.location.pathname) {
        case '/':
          $('.nav-home').addClass('current');
          break;
        case '/p/about.html':
          $('.nav-about').addClass('current');
          break;
        case '/search/blog':
          $('.nav-blog').addClass('current');
          break;
        case '/search/blog':
          $('.post').addClass('masonry');
          break;

また、指定がない場合、nav-blog にクラスを追加する方法はありますか?

動かない例:

    case 'ANY OTHER URL':
      $('.nav-blog').addClass('current');
      break;

ありがとう。

4

2 に答える 2

3
case '/search/blog':
    $('.nav-blog').addClass('current');
    break;
case '/search/blog':
    $('.post').addClass('masonry');

あなたはあなたのケースを複製しました

于 2013-05-17T05:56:25.203 に答える
0

次のように切り替えるための2つのオプションを削除してみてください

case '/search/blog':
      $('.nav-blog').addClass('current');
      $('.post').addClass('masonry');
      break;

別のケースを追加してみてください。'/search/blog' のケースが重複しています

于 2013-05-17T05:53:15.817 に答える