Путевые точки, всегда выдающие ошибки "undefined is not function / object" - PullRequest
2 голосов
/ 31 марта 2012

Я пытаюсь использовать Маршрутные точки для создания очень простого эффекта прокрутки, но по какой-то причине я просто не могу заставить работать Маршрутные точки.

jQuery (1.7.1) правильно загружен и загружен до путевых точек. На странице есть другие функции jQuery, и все они работают без проблем; например:

$(document).ready(function() {
  $(".form label").addClass("column");
}

Путевые точки (waypoints.min.js, версия 1.1.6) также загружаются корректно после jQuery.

Но что бы я ни делал, я не могу заставить что-либо в путевых точках реагировать вообще ни на что, кроме Firefox.

Если я вызову waypoint() непосредственно для элемента, не проверяя, чтобы document завершил загрузку, то я не получаю никакой ошибки, но и никакой реакции:

$('.wrapper').waypoint(function() {
    alert('You have scrolled to an entry.');
});

- не выдает консольных ошибок или предупреждений, но также ничего не предупреждает (как я и не ожидал, так как сценарий размещен до создания .wrapper div).

Если я дождусь окончания document, вот так:

$(document).ready(function() {
    $('.wrapper').waypoint(function() {
    alert('You have scrolled to an entry.');
    });
});

- тогда, похоже, он работает в Firefox, но не в Chrome, Opera или Safari. Веб-консоль Safari сообщает мне

TypeError: 'undefined' не является функцией (оценка
'$('.wrapper').waypoint(function() { alert('You have scrolled to an entry.'); })')

- и я не уверен, почему undefined внезапно теперь не является функцией (или почему функция теперь внезапно «устанавливается» на undefined, в зависимости от того, какой из этих способов более корректен)…

Я ни при каких обстоятельствах не в восторге от jQuery или JavaScript в целом, поэтому я действительно не знаю, где искать то, что может конфликтовать с ним, или почему он делает это со мной.

Помощь

Ответы [ 2 ]

4 голосов
/ 01 апреля 2012

Оказывается, по какой-то причине я в какой-то момент добавил второй импорт jQuery, на этот раз прямо с серверов Google, и поместил этот второй вызов в другой файл, где он лежал невидимым и неизвестным целую вечность.

Как только я избавился от этого, путевые точки работали (более или менее), как и ожидалось.

1 голос
/ 23 января 2015

Я новичок в этом курсе разработки, и единственное, что я заметил, что неправильно сделал с плагинами Jquery, это порядок, в котором мои скрипты были в теге head.Когда я сначала поставил свой сценарий Jquery, то мои неопределенные ошибки в консоли Google Chrome исчезли.

...