1

私は(100%確実ではありませんが)JavaScriptの競合に苦しんでいると思います。WordPressページでプラグインを使用してカウントダウンクロックを生成しています.jQueryで簡単なカスタムメイドのjavascriptを使用して、スクロールの特定のポイントでページにdivを表示および非表示にしています.

表示/非表示の div を正しく機能させるために、ヘッダーに 2 つの JavaScript 呼び出しを追加しました。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript" src="<?php bloginfo('template_url'); ?>/js/test1.js"></script> 

1 つ目は jquery ライブラリで、2 つ目はカスタム スクリプトです。これらのコード行をヘッダーに追加した後、私の Web サイトでカウントダウン クロックが機能しなくなりました。少しデバッグしたところ、Google がホストするスクリプトが時計を動かしていないことがわかりました。

ヘッダーに Google がホストする jquery ライブラリのコードがあると、次のエラーが表示されます: Error = Object [object Object] has no method 'jCountdown'

これに対する解決策は、functions.php ファイルで wp_enqueue_script と wp_register_script を使用して、必要な 2 つの .js ファイルを追加し、ヘッダーからコードを削除することだと思います。ただし、これらのコードのビットがどのように機能するかについてはよくわかっておらず、理解できないようです。以下は、functions.php ファイルで使用する必要があると思われるコードですが、うまく機能させることができませんでした。

function notSureWhatGoesHere() {
        wp_register_script(notSureWhatGoesHere);
        wp_enqueue_script(notSureWhatGoesHere);
        }

        add_action(notSureWhatGoesHere);

そして、ここに私のテスト Web ページへのリンクがあります: http://jltest.biz/test-1

ご協力と時間をありがとうございました。

4

1 に答える 1

2

あなたが持っているError = Object [object Object] has no method 'jCountdown'

プラグインが正しくロードされていない可能性があります...

追加したjQueryを削除してくださいjQuery.1.10.2。機能しないことに驚かないでください..

PLUS - WordPress はすでにバージョンを追加していますjQuery.1.8.3

さて、テストファイルにはこれがあります

var startY = 840;
var stopY = 1900;

$(window).scroll(function(){
    checkY();
});

function checkY()
{
    console.log($(window).scrollTop()); 
    if($(window).scrollTop() > startY && $(window).scrollTop() <= stopY)
    {
        console.log("Show"); 

        $('.fixedDiv').fadeIn("slow"); 
    }
    else
    {
        console.log("Hide"); 
        $('.fixedDiv').fadeOut();
    }
}

checkY();

Wordpress はjQuery.noConflict();デフォルトで使用するため、コードを次のようにラップする必要があります。

(function( $ ) {

    // Code Here....

}( jQuery ));
于 2013-07-21T22:41:22.920 に答える