2016-05-17 15 views
0

免責事項:私はjQueryの初心者です。WordPressのウェブサイトでjQueryを実行できないのはなぜですか?

私が試したこと: Magnum WPテーマには、複数のjsファイルがエンキューされています。私はcustom.jsにjQueryコードを追加しましたが、これは間違いなく正しく機能しています(機能は明らかに不足しています)。私はまた、最後に(jQueryライブラリが呼び出された後に)まっすぐに貼り付けられたコードで、<script>タグを頭の中に追加しようとしました。テーマはjQueryを使用しているため、libが確実にリンクされています。私は多くの異なるコードスニペットを試しましたが、私はそれらのいずれかを動作させることはできません。例えば。私はまた、$(意味的に正しいかわからない)に置き換えjQueryでそれを試してみた

jQuery(window).scroll(function() { 

    var position = $(this).scrollTop(); 

    jQuery('.section').each(function() { 
     var target = $(this).offset().top; 
     var id = $(this).attr('id'); 

     if (position >= target) { 
      jQuery('.menu-wrap > ul > li > a').removeClass('yes'); 
      jQuery('.menu-wrap > ul > li > a[href=#' + id + ']').addClass('yes'); 
     } 
    }); 
}); 

を実行するには、このいずれかを取得するために一日中しようとしてきました。

リンクされたhtml要素が存在することを確認できます。 .yesは、自分のスタイルシートで参照できるように、background: red;というルールで参照されています。

なぜこのコードまたは他のjquery関数が読み込まれないのか、私は考えられません。

クロムコンソールに関連するエラーはありません。

+2

コンソールに変更しましたか?エラー?または単に動作しませんか? – xAqweRx

+0

コンソールをチェックしましたか? –

+0

@xAqweRx関連するエラーはありません: jquery-migrate.min.js?ver = 1.4.0:2 JQMIGRATE:Migrateがインストールされています。バージョン1.4.0 theme.minがインストールされています。 js?ver = 1457655677:3 carouFredSel: ".services-slider"の要素が見つかりませんでした。 util.js:222 Google Maps API警告:NoApiKeys https://developers.google.com/maps/documentation/javascript/error-messages#no-api-keys – user1395909

答えて

0

今のところ、互換モードでjQueryを使用していると言えます。このコードを試してください:あなたはCSSセレクタを使用している

jQuery(window).scroll(function() { 

    var position = jQuery(this).scrollTop(); 

    jQuery('.section').each(function() { 
     var target = jQuery(this).offset().top; 
     var id = jQuery(this).attr('id'); 

     if (position >= target) { 
      jQuery('.menu-wrap > ul > li > a').removeClass('yes'); 
      jQuery('.menu-wrap > ul > li > a[href*="#' + id + '"]').addClass('yes'); 
     } 
    }); 
}); 

またはこの1

jQuery(function($){ 
    $(window).scroll(function() { 

    var position = $(this).scrollTop(); 

    $('.section').each(function() { 
     var target = $(this).offset().top; 
     var id = $(this).attr('id'); 

     if (position >= target) { 
      $('.menu-wrap > ul > li > a').removeClass('yes'); 
      $('.menu-wrap > ul > li > a[href*="#' + id + '"]').addClass('yes'); 
     } 
    }); 
    }); 

}) 

そして、もっとそうa[href=#id]が正しくありません。あなたはstringをvalueに渡す必要があり、あなたのリンクはセレクタのidと完全には一致しませんが、部分的なものだけです。だから私はそれをa[href*="#id"]

+0

試していただきありがとうございます - 私は運がないとこれを試してみました。 – user1395909

+0

実稼働中にコードをお持ちですか? – xAqweRx

+0

http://hotglue.com.au/x_2013/ – user1395909

関連する問題