В Drupal 9/10 нет jQuery плагина once(), потому при использовании этой функции вы увидите сообщение о том, что once — не является функцией.
Плагин удобен, но его не сложно заменить в коде буквально парой вставок. Он работает по следующему алгоритму — тестируемые элементы маркируются классом ‘processed’, а повторная проверка once() фильтрует тестируемые элементы по наличию этого класса.
Выглядит это обычно так:
|
|
$('.my-element').once().each( (index, elem) => { ... } ); |
А заменить это можно вот так:
|
|
$('.my-element:not(.processed)').each( (index, elem) => { $(elem).addClass('processed'); ... } ); |
Drupal 9/10
Данная запись опубликована в 08.05.2023 14:59 и размещена в рубрике Drupal, jQuery.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Май 6, 2023 г.
С 8й версии друпал предлагает механизм переопределения/задания хлебных крошек через реализацию сервиса breadcrumb_builder.
Немного теории
При создании хлебных крошек, Drupal вызывает объявленные сервисы в порядке их приоритетов, и опрашивает ...
Читать
Август 2, 2023 г.
Использую Drupal Commerce, и в меню у меня есть пункт "Корзина", со ссылкой на корзину пользователя. Хочется, чтобы стиль пункта меню менялся, если корзина не пуста.
Я буду использовать hook_preprocess_menu темы, чтобы изменить нужный пункт меню ...
Читать
Апрель 3, 2024 г.
Ранее подход, который я опишу, использовался для nodequeue, сейчас с заменой плагина фунционалом entityqueue, тоже самое можно применить и для него.
Проблема:
Создано представление (view), где источник данных - элементы datasource Search API. ...
Читать
Сентябрь 6, 2023 г.
Пример кода, реализующий endpoint скачиваемого файла.
[crayon-6ad576718b29c055613747/]
Кроме контроллера, вам потребуется еще задать маршрут. Пример описания маршрута:
[crayon-6ad576718b2a3696327032/]
Читать