Ich habe zwei verschiedene Module, die in vielerlei Hinsicht zusammenarbeiten. Sie arbeiten unter anderem daran, dass Modul A Inhalte über AJAX lädt und Modul B Ereignis-Listener an die geladenen Inhalte anfügt.
Es scheint jedoch, dass beim Laden von Inhalten über AJAX durch Modul A nur die Funktion "Anhängen" von Drupal.behaviours.a aufgerufen wird und nicht die Funktion "Anhängen" von Drupal.behaviours.b . Beide Funktionen werden beim Laden einer Seite aufgerufen, jedoch nicht beim anschließenden Laden von AJAX-Inhalten.
// This runs every time module A loads new content.
Drupal.behaviors.a = {
attach: function(context, settings) {
alert('a:attach');
}
}
// This only runs on page load, but never when module A loads new content.
Drupal.behaviors.b = {
attach: function(context, settings) {
alert('b:attach');
}
}
Wie kann ich die Funktion "Anhängen" von Drupal.behaviours.b jedes Mal ausführen lassen, wenn ein Modul neuen Inhalt lädt?
$('body').ajaxSuccess(Drupal.attachBehaviors);
wird dies wahrscheinlich funktionieren
Drupal.attachBehaviors();
, den Ajax Success Callback zu ergänzen?