私のwordpressサイトは私のページにスクリプトを読み込まない。私は私がいないページのソースコードを表示するとなぜ私のjQueryスクリプトをWordPressに読み込まないのですか?
$(document).ready(function() {
var stickyNavTop = $('.blog-nav').offset().top;
var stickyNav = function(){
var scrollTop = $(window).scrollTop();
if (scrollTop > stickyNavTop) {
$('.blog-nav').addClass('sticky');
}
else {
$('.blog-nav').removeClass('sticky');
}
};
stickyNav();
$(window).scroll(function() {
stickyNav();
});
});
:
function nav_script() {
wp_enqueue_script('script', get_stylesheet_directory_uri() .'/js/script.js', array('jQuery'), '1.0.0', true);
}
add_action('wp_enqueue_scripts', 'nav_script');
と、次のようにscripts.jsにcontaintedスクリプトは次のとおりです。私はのfunctions.phpに以下の機能を置きますスクリプトを参照して、何らかの理由でロードされていなかったので...私は頭の中にwp_headを、bodyの終了タグの前にwp_footerを持っているので、何が起こっているのかという手掛かりはない。
function nav_script() {
?>
<script>
$(document).ready(function() {
var stickyNavTop = $('.blog-nav').offset().top;
var stickyNav = function(){
var scrollTop = $(window).scrollTop();
if (scrollTop > stickyNavTop) {
$('.blog-nav').addClass('sticky');
} else {
$('.blog-nav').removeClass('sticky');
}
};
stickyNav();
$(window).scroll(function() {
stickyNav();
});
});
</script>
<?php
}
add_action('wp_head', 'nav_script');
しかしI:関数が編集
...私はJSFiddleにしようとしたとして、通常のHTMLで働く... Guysは、私はこのように、関数に「手動」スクリプトを追加することで何かを達成しました2つのことに気付いた: 1つ:<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
のCDNを頭に挿入しないと動作しません。 TWO:私は私にいくつかのプラグインの競合を示唆しているウェブサイトを、リロードする場合にのみ動作します...
ソースを表示しますか?またはDOMを検査する? 2つの非常に異なるもの! –
ここからわかるように、右クリックしてページソースを表示しました。https://jsfiddle.net/7undbb8L/ @NiettheDarkAbsol –
「ページソース」は、JavaScriptが実行される前にサーバーから受信されたものです。 –