Dans mdui, certains composants doivent être initialisés après le chargement du DOM. Par conséquent, les composants générés dynamiquement ne peuvent pas être initialisés automatiquement. Pour cela, mdui fournit la méthode mdui.mutation().
En appelant cette méthode, tous les composants encore non initialisés sur la page seront initialisés.
var html =
'<select class="mdui-select" mdui-select>' +
' <option value="1">State 1</option>' +
' <option value="2">State 2</option>' +
' <option value="3">State 3</option>' +
'</select>';
// Un composant Select a été ajouté dynamiquement, mais comme il est appelé via un attribut personnalisé, il ne peut pas être initialisé automatiquement.
$('body').append(html);
// Appelez cette méthode pour initialiser tous les composants encore non initialisés sur la page.
mdui.mutation();Si vous passez deux arguments à la méthode mdui.mutation(), elle peut être utilisée pour initialiser les composants que vous avez écrits vous-même. Le premier argument est un sélecteur CSS, le second est une fonction d’initialisation.
Lors de l’appel de mdui.mutation(selector, apiInit), le sélecteur CSS et la fonction d’initialisation sont associés, puis $(selector).each(apiInit) est exécuté pour appeler la fonction d’initialisation.
Lors du prochain appel à mdui.mutation(), si le composant correspondant au sélecteur CSS n’a pas encore été initialisé, la fonction d’initialisation sera appelée automatiquement.
Si vous devez initialiser les composants à l’intérieur d’un élément spécifique, vous pouvez appeler $(selector).mutation() ; cette méthode initialise les composants non encore initialisés dans le sélecteur et ses éléments enfants.