В 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 16, 2024 г.
Задача модуля - дать возможность разделить конфигурации сайта для разных системных окружений. На локальном сервере вы можете использовать такие модули ...
Читать
Сентябрь 13, 2023 г.
Весьма распространённый случай, когда в качестве exposed filter используется поле, связанное с таксономией. Так вы получаете набор опций в фильтре для своего представления, которое доступно пользователю.
Также весьма часто некоторые дополнительные ...
Читать
Февраль 14, 2024 г.
Пример того, как можно дополнить результаты views в Drupal 9/10.
Задача - вывести для статьи блок со связанными публикациями. В начале нужно было просто выводить последние статьи того же типа, а потом у заказчика возникло желание переопределять выдачу, ...
Читать
Октябрь 9, 2024 г.
При выполнении drush updb вы можете увидеть такое сообщение. Обычно это связано с обновлением модуля до следующей major версии.
Тогда в модуле может быть прописан hook_update_last_removed, где прописан номер hook_update, ниже которого номерные ...
Читать