Если вы пользуетесь модулем flag в Drupal, то можете столкнуться с ситуацией, что загруженные по ajax переключатели флагов не работает. Такая ситуация происходит всегда, когда требуется особенная инициализация после загрузки страницы, ситуация с flag не уникальна.
Как же нам инициализировать флаги для их правильной работы после догрузки контента по ajax?
К примеру, вы грузите кусочек шаблона, используя jQuery. В js это может выглядеть так:
|
|
$('#place-of-content').load('/ajax-load'); |
После загрузки HTML, содержащего флаги, нужно выполнить инициализацию, содержащуюся в скрипте модуля flag. В нашем примере это можно реализовать следующим образом:
|
|
$('#place-of-content').load('/ajax-load', {}, function () { $.getScript('/sites/all/modules/flag/theme/flag.js', function() { Drupal.behaviors.flagLink.attach(document); }); }); |
Функцию attach можно выполнить и более точечно.
Данная запись опубликована в 11.03.2017 02:33 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Январь 19, 2010 г.
(ремарка : речь идет о 6-й версии drupal)
Если вам иногда приходится писать модули для Drupal, или вы вдруг этим только решили заняться, то однажды вы, возможно, захотите написать код модуля полностью соответствующий спецификациям и рекомендациям drupal.org. ...
Читать
Май 24, 2019 г.
Пример кода, как программно реализовать создание параграфа (речь идет о модуле - paragraphs).
Обычно параграфы создаются редакторами через админку, но иногда требуется создать новый параграф с помощью кода, например, при импорте данных, структурных ...
Читать
Март 31, 2015 г.
Конструирование многоязычного сайта добавляет множество деталей, которые нужно учитывать в процессе работы. Это и верстка шаблона, картинки которого могут ...
Читать
Май 21, 2025 г.
Drupal — мощная и гибкая система управления сайтом. Но без регулярной поддержки даже самый хорошо сделанный проект может прийти в запустение. В этой статье ...
Читать