2013-07-21 2 views
0

Я думаю (не уверен на 100%), что я страдаю от конфликта javascript. Я использую pluggin для создания часов обратного отсчета на моей странице WordPress, и я использую простой javascript с javascript с jQuery для создания div-отображения и исчезновения на странице в определенных точках прокрутки.Исправление конфликта JavaScript в Wordpress, помощь с использованием wp_enqueue_script

Для того, чтобы появившаяся/исчезающую Диву работа правильно, я добавил два 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> 

первой из которых библиотеки Jquery, а вторая мой пользовательский сценарий. После добавления этих строк кода в заголовок часы обратного отсчета перестали работать на моем сайте. Через небольшую отладку я понял, что это скрипт, размещенный в Google, который заставляет часы работать не так.

Когда у меня есть код, размещенный в Google JQuery библиотеки в моем заголовке я получаю следующее сообщение об ошибке: Error = Object [объект Object] не имеет какую-либо методы «jCountdown»

Я считаю, что решение этой проблемы является используя wp_enqueue_script и wp_register_script в файле functions.php, чтобы добавить два .js-файла, которые мне нужны, и удалить код из заголовка. Тем не менее, я не знаком с тем, как эти биты кода работают и не могут понять, что они понимают. Ниже приведен код, который, как мне кажется, должен использоваться в файле functions.php, но я не смог его заставить работать.

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

     add_action(notSureWhatGoesHere); 

А вот ссылка на мой тест веб-страницы: http://jltest.biz/test-1

Большое вам спасибо за вашу помощь и время.

ответ

2

У вас есть Error = Object [object Object] has no method 'jCountdown'

Может ваш плагин не загружен правильно ...

Удалить JQuery вы добавили jQuery.1.10.2 поэтому я не supprised, что он не работает ..

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)); 
+0

К сожалению, я должен был быть более ясным, и с тех пор изменил мой оригинальный пост, это ошибка, возникающая при вызове библиотеки jQuery хоста Google в моем заголовке. Когда я удаляю эту строку кода из моего заголовочного файла, pluggin работает отлично. – user2603286

+0

Я пробовал это, (в настоящее время удалено), но как только он удаляется, мой div, который должен появиться и исчезнет, ​​перестает работать. – user2603286

+0

Ну, пошлите ссылку, когда вы ее удалили – iConnor

Смежные вопросы