Jquery one не работает

Форум

Справочник

Страница 1 из 2 1 2 >
Опции темы Искать в теме

Пытаюсь перейти на использование этой библиотеки, т.к. очень упрощается разработка. Но вот взял простой пример и он не работает. Вот отсюда пример: https://codepen.io/geoffmuskett/pen/uldmJ

Там всего несколько строчек кода:

В примере всё работает, у меня — нет.

Что не так на этой странице, подскажите, пожалуйста: https://www.bratskonline.ru/test.shtml

jQuery там подключается внизу страницы, версия jquery-3.4.1.min.js, в примере тоже «min», только более ранняя.

Но всё равно не работает. Причём там советуют ставить script в head, а у меня используется bootstrap 4, который рекомендует ставить его вниз страницы. Пробовал оба варианта, всё равно счётчик не считает.

Смотрите консоль, какие ошибки выдает
И jquery и скрипты bootstrap лучше ставить в head.

То, что я сейчас вижу на вашей странице
У вас сначала идет вызов

А потом где то далеко внизу идет вызов библиотеки jquery, в которой и определяются функции jQuery (и $)
Естественно возникает ошибка
Uncaught ReferenceError: jQuery is not defined

voraa, на сайте Bootstrap написано:

Place the following
До того, как этот файл загрузится и отработает, браузер понятия не имеет, что существует какая то там функция jQuery (или $()).
И любое обращение к ним вызовет ошибку.

По мне, так это дурацкое занятие, размещать скрипты в теле html.
Все скрипты в head.
Те, которые должны вызываться после загрузки — в обработчик DOMContentLoaded

Я не нашел там prd вообще. Ничего не могу сказать.

Источник

почему код JQuery не работает в моем проекте

У меня есть проблема с моим кодом, я хочу измерить общую ширину моего ul и проверить, если он меньше, чем ширина окна, он не показывает переполнение: прокрутка, и если он больше, чем ширина окна, просто скрыть прокрутку под Ли (ы).
каждый li имеет ширину 120px и его поле равно: 0 2px; Вот почему я использую 120 и 4, чтобы подвести итог общей ширины .ulcontainmatrix

Моя проблема: код работает правильно, когда я использую его в консоли браузера и нажимаю Run code, но не работает в моем коде при загрузке окна !!

3 ответа

Большая проблема, и я должен сказать, что вы правы на 90%, , но некоторые изменения необходимы.

Я изменил ваш CSS на это:

И некоторые изменения в вашем коде jquery:

И все работает отлично.

Возможно, вы захотите обернуть свой код jQuery в «готовое» событие.

Это позволит убедиться, что код javascript внутри него будет выполняться только после загрузки вашего документа (следовательно, все элементы, которые могут быть задействованы в вашем коде javascript, существуют в документе)

Другой подход состоит в том, чтобы переместить ваш javascript внизу тега body, но это не рекомендуется (как примечание: рекомендуется загружать файлы javascript внизу документа, если это возможно).

Краткое объяснение, почему это происходит .

В некоторых случаях ваш код javascript может быть выполнен до того, как некоторые элементы в вашем HTML будут добавлены и доступны для использования (процесс рендеринга документа), поэтому, если у вас есть некоторый код jQuery, который намеревается использовать или манипулировать элементом, которого еще нет доступно — ваш код не будет работать (обычно без каких-либо ошибок и заставляет задуматься «почему он не работает?»)

Поэтому проще всего вставить JavaScript после позиции в документе, куда вставляются элементы (обычно в конце документа, непосредственно перед тегом

Источник

WordPress.org

Русский

Поддержка → Проблемы и решения → Не работает обращение к jquery

Не работает обращение к jquery

Здравствуйте! Для вывода результата работы скрипта на многих сайтах использую такой решение: вставляю в пост с помощью плагина следующий код:

На других моих сайтах, код работает, по клику результаты работы скрипта выводится в div без перезагрузки страницы.
Я уж добавлял , хотя, вроде бы, jquery подключен в движке… Не работает.
Может Woody ad snippets (PHP snippets | Insert PHP) виной, ранее я использовал другой плагин для вставки исполняемого кода? Но вроде все корректно вставляется. Буду благодарен за любые советы.
PS Прошу прощения, проблема решена. Дело было в банальной невнимательности.

  • Тема изменена 1 год, 2 месяца назад пользователем Wic_ .
  • Тема изменена 1 год, 2 месяца назад пользователем Wic_ .

В WordPress 5.5 начат процесс обновления библиотеки jQuery,
см — https://make.wordpress.org/core/2020/06/29/updating-jquery-version-shipped-with-wordpress/
это может создавать проблемы со старыми плагинами и темами, зависящими от старой версии.Для начала, убедитесь что у вас есть резервная копия сайта, созданная до обновления WordPress. Возможно, если вы не найдете решения, вам придется откатить сайт на состояние до обновления.
(Или вы правда ринулись обновляться сразу же после выхода новой версии даже не создав бэкап?)

1. Проверьте обновления всех плагинов и тем. Установите их, если обновления есть.

2. Установите и активируйте плагин восстановления совместимости со старой версией jQuery
https://ru.wordpress.org/plugins/enable-jquery-migrate-helper/

Это временное решение, которое поможет вам ровно до того момента, пока плагины и темы не будут обновлены.
В вашу консоль будут выводиться сообщения отладки, вы можете использовать их для поиска виновного старого плагина.

3. Сообщите авторам старых плагинов о необходимости обновления.
Используйте сообщения отладки полученные от плагина Enable jQuery Migrate Helper

4. Не забывайте проверять и устанавливать обновления плагинов и тем (или просто включите автообновления для них)

Источник

почему $ (window) .load () не работает в jQuery?

Я изучаю jQuery с помощью Visual Studio и тестирую свой код в браузере Chrome. Это мой HTML-код

Это мой обозреватель решений

Теперь, почему мой браузер не сообщает «окно загружено»?

4 ответа

Вы используете jQuery версии 3.1.0, а событие загрузки не рекомендуется использовать, начиная с версии jQuery 1.8. Событие загрузки удаляется из jQuery 3.0. Вместо этого вы можете использовать метод on и привязать JavaScript событие загрузки:

Не будет работать, потому что функция загрузки больше не работает

Мне нужно написать целый ответ отдельно, так как ко второму ответу сложно добавить такой длинный комментарий.

Мне жаль это говорить, но второй ответ выше не работает .

Следующие три сценария продемонстрируют мою точку зрения:

Сценарий 1. До того, как следующий способ стал устаревшим,

Если мы выполним следующие два запроса:

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

Сценарий 2 . Но если мы выполним следующие два запроса, как следует из второго ответа выше:

предупреждение («Окно загружено») из первого запроса будет отображаться первым, а предупреждение («загружено окно») из второго запроса будет отображаться позже, что НЕ правильно.

Сценарий 3 . С другой стороны, если мы выполним следующие два запроса, мы получим правильный результат:

То есть предупреждение (Dom Loaded.) из второго запроса будет отображаться первым, а предупреждение (Window Loaded.) из первого запроса будет отображаться позже , что является RIGHT результат.

Короче говоря, ПЕРВЫЙ ответ — ПРАВИЛЬНЫЙ:

Источник

jQuery метод .one()

Определение и применение

jQuery метод .one() приcоединяет для выбранных элементов функцию обработчика, которая будет выполнена не более одного раза к каждому элементу по каждому типу событий.

Обращаю Ваше внимание, что метод .one() идентичен методу .on(), за исключением того, что обработчик для конкретного элемента и типа события отвязывается после его первого вызова.

jQuery синтаксис:

Добавлен в версии jQuery

Значения параметров

Параметр Описание
events Если в качестве параметра используется строковое значение, то оно соответствует одному, или нескольким разделенных пробелами типов событий (опционально допускается указывать пространство имен).
Например: » click » или » click dblclick.myNamespace »
Если в качестве параметра используется объект, то в нем строковые ключи представляют один или несколько типов событий, разделенных пробелами, а значения представляют из себя функцию, которая вызывается и обрабатывает событие. В этом случае так же допускается дополнительно указывать пространства имен.
Например:
selector Строка селектора для фильтрации потомков выбранных элементов, запускающих событие. Обратите внимание, что если параметр отсутствует, или имеет значение null , то обработчик всегда вызывается при достижении выбранного элемента (не зависимо событие вызвано на элементе, или вложенном элементе).
data Какие-либо данные, или объект, содержащий данные, которые будут переданы в обработчик событий при его срабатывании (свойство объекта Event event.data ).
handler Функция, которая будет выполнена один раз, когда событие срабатывает. Функция в качестве параметра может принимать объект Event и при необходимости дополнительные параметры для решения конкретной задачи. Значение false также может использоваться в качестве сокращенной записи функции, которая имеет тело return false (при вызове возвращает значение false ).

Пример использования

В этом примере с использованием jQuery метода .one() мы приcоединяем для выбранных элементов

Результат нашего примера:

Пример использования jQuery метода .one()

В следующем примере мы рассмотрим как присоединить для выбранных элементов функции обработчика для различных событий:

В этом примере с использованием jQuery метода .one() мы приcоединяем для выбранных элементов

При срабатывании события » click » функция с помощью метода .css() изменяет текущую ширину элемента, прибавляя к текущей ширине элемента 50 пикселей. При срабатывании события » dblclick » функция с помощью метода .css() изменяет текущую высоту элемента, прибавляя к текущей ширине элемента 50 пикселей.

Результат нашего примера:

Пример использования jQuery метода .one() (несколько событий) jQuery события

Источник

Читайте также:  Если нигде не работаешь получаешь ли декретные
Оцените статью