Подтвердить что ты не робот

$ не является функцией - ошибка jQuery

У меня jQuery загружен отлично, я проверил четыре раза, хотя я получаю эту ошибку в FireBug "$ не является функцией", и мой код не работает.

Здесь мой код:

<script type="text/javascript">
    $("ol li:nth-child(1)").addClass('olli1');
    $("ol li:nth-child(2)").addClass("olli2");
    $("ol li:nth-child(3)").addClass("olli3");
    $("ol li:nth-child(4)").addClass("olli4");
    $("ol li:nth-child(5)").addClass("olli5");
    $("ol li:nth-child(6)").addClass("olli6");
    $("ol li:nth-child(7)").addClass("olli7");
    $("ol li:nth-child(8)").addClass("olli8");
    $("ol li:nth-child(9)").addClass("olli9");
    $("ol li:nth-child(10)").addClass("olli10");
    $("ol li:nth-child(11)").addClass("olli11");
    $("ol li:nth-child(12)").addClass("olli12");
    $("ol li:nth-child(13)").addClass("olli13");
    $("ol li:nth-child(14)").addClass("olli14");
    $("ol li:nth-child(15)").addClass("olli15");
    $("ol li:nth-child(16)").addClass("olli16");
    $("ol li:nth-child(17)").addClass("olli17");
    $("ol li:nth-child(18)").addClass("olli18");
    $("ol li:nth-child(19)").addClass("olli19");
    $("ol li:nth-child(20)").addClass("olli20"); 
</script>
4b9b3361

Ответ 1

В Wordpress jQuery.noConflict() вызывается в файле jQuery, который он включает (прокрутите вниз к файлу, который он включает для jQuery, чтобы увидеть это), что означает $ не работает, но jQuery делает, поэтому ваш код должен выглядеть следующим образом:

<script type="text/javascript">
  jQuery(function($) {
    for(var i=0; i <= 20; i++) 
      $("ol li:nth-child(" + i + ")").addClass('olli' + i);
  });
</script>

Ответ 2

Сложно сказать, но одна из 9001 объявлений на странице может быть clobbering объекта $.

jQuery предоставляет глобальный объект jQuery (который присутствует на вашей странице). Вы можете сделать следующее, чтобы "получить" $ назад:

jQuery(document).ready(function ($) {
    // Your code here
});

Если вы считаете, что у вас проблемы с jQuery, используйте отладочные (непроизводственные) версии библиотеки.

Кроме того, это, вероятно, не самое лучшее редактирование живого сайта, подобного этому...

Ответ 3

Как упоминает RPM1984, это скорее всего связано с тем, что ваш script загружается до загрузки jQuery.

Ответ 4

Эта ошибка возникает, когда вы забыли включить библиотеку jQuery на свою страницу или существует конфликт между библиотеками - например, вы используете любую другую библиотеку javascript на своей странице.

Взгляните на это для получения дополнительной информации:

Ответ 5

Когда jQuery отсутствует, вы получаете $ is undefined, а не ваше сообщение.

Вы проверили, нет ли у вас переменной с именем $где-то перед вашим кодом?
Осмотрите значение $в firebug, чтобы узнать, что это такое.

Немного от вопроса, но я не могу удержаться от написания более короткого кода для вашего назначения класса:

    var i = 1;
    $("ol li").each(function(){
        $(this).addClass('olli' + i++);
    });

Ответ 6

<script type="text/javascript">
    $("ol li:nth-child(1)").addClass('olli1');
    $("ol li:nth-child(2)").addClass("olli2");
    $("ol li:nth-child(3)").addClass("olli3");
    $("ol li:nth-child(4)").addClass("olli4");
    $("ol li:nth-child(5)").addClass("olli5");
    $("ol li:nth-child(6)").addClass("olli6");
    $("ol li:nth-child(7)").addClass("olli7");
    $("ol li:nth-child(8)").addClass("olli8");
    $("ol li:nth-child(9)").addClass("olli9");
    $("ol li:nth-child(10)").addClass("olli10");
    $("ol li:nth-child(11)").addClass("olli11");
    $("ol li:nth-child(12)").addClass("olli12");
    $("ol li:nth-child(13)").addClass("olli13");
    $("ol li:nth-child(14)").addClass("olli14");
    $("ol li:nth-child(15)").addClass("olli15");
    $("ol li:nth-child(16)").addClass("olli16");
    $("ol li:nth-child(17)").addClass("olli17");
    $("ol li:nth-child(18)").addClass("olli18");
    $("ol li:nth-child(19)").addClass("olli19");
    $("ol li:nth-child(20)").addClass("olli20"); 
</script>

измените это на

    <script type="text/javascript">
        jQuery(document).ready(function ($) {
        $("ol li:nth-child(1)").addClass('olli1');
        $("ol li:nth-child(2)").addClass("olli2");
        $("ol li:nth-child(3)").addClass("olli3");
        $("ol li:nth-child(4)").addClass("olli4");
        $("ol li:nth-child(5)").addClass("olli5");
        $("ol li:nth-child(6)").addClass("olli6");
        $("ol li:nth-child(7)").addClass("olli7");
        $("ol li:nth-child(8)").addClass("olli8");
        $("ol li:nth-child(9)").addClass("olli9");
        $("ol li:nth-child(10)").addClass("olli10");
        $("ol li:nth-child(11)").addClass("olli11");
        $("ol li:nth-child(12)").addClass("olli12");
        $("ol li:nth-child(13)").addClass("olli13");
        $("ol li:nth-child(14)").addClass("olli14");
        $("ol li:nth-child(15)").addClass("olli15");
        $("ol li:nth-child(16)").addClass("olli16");
        $("ol li:nth-child(17)").addClass("olli17");
        $("ol li:nth-child(18)").addClass("olli18");
        $("ol li:nth-child(19)").addClass("olli19");
        $("ol li:nth-child(20)").addClass("olli20"); 
     });
    </script>

Ответ 7

Возможны две причины для этой ошибки:

  • Недопустимый ссылочный файл jquery script
  • попробуйте поставить ваш код jquery в document.ready, например:

    $(документ).ready(функция() {

    .... ваш код....

    });

веселит