В 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Май 1, 2023 г.
Чтобы изменить штатный макет формы webform-submission-form.html.twig, требуется имплементация своего шаблона.
Для начала определимся с именем шаблона. ...
Читать
Июль 25, 2023 г.
Такое иногда вылазит как следствие удаления кастомных классов/модулей, создающих собственные права или инициализирующие права через родительский модуль.
Как это пофиксить?
Права из роли не были удалены штатно, потому придется сделать следующее: ...
Читать
Май 19, 2023 г.
Посмотрим как получить непосредственный доступ к файлу без загрузки файла в хранилище, при его загрузке в поле типа "file" Form API.
Много гайдов посвящено тому как использовать поле managed_file, а для unmanaged случая считается, что разработчик ...
Читать
Октябрь 18, 2023 г.
Сущность возвращает язык в контексте выбранного языка, но иногда нужно получить оригинальный язык node или другой entity.
Вот так выглядит запрос в контексте:
[crayon-6a507b6d4a4df740024529/]
А так можно получить код языка оригинальной версии ...
Читать