- Quels sont les comportements Drupal?
- Quel type de couche de services offre-t-il aux développeurs de modules?
- Quel type de relation correspond-il à
jQuery.ready
?
Réponses
Trop de publicités?Version longue: Drupal.comportements n'est pas simplement un remplacement pour jQuery.la main, car ce dernier ne s'exécute qu'une seule fois (lorsque le DOM est prêt pour la manipulation): les comportements peuvent être tiré à plusieurs reprises au cours de l'exécution de page et peut être exécuté à chaque fois que de nouveaux éléments du DOM sont insérés dans le document.
Aussi, les modules pourraient remplacer ou étendre un comportement existant (par exemple, si un module a un comportement de l'ajout d'un effet de rebond sur tous les liens, un second module pourrait remplacer le comportement par un autre effet de rebond).
Version courte: c'est plus modulaire, si la documentation pourrait être améliorée.
Aussi, à partir de Drupal 7, les paramètres définis à l'aide de drupal_add_js (PHP) ou dans Drupal.les paramètres.modulename (Javascript) sont directement passé en second paramètre (la première étant le contexte) pour le comportement.
Par exemple:
Drupal.behaviors.changeLinks = function(context, settings){
if (!settings) settings = Drupal.settings.changeLinks;
$("a", context).hover(function() {
$(this).css('color', settings.color);
});
};
Et si l'un de vos script (ou un autre) crée de nouveaux nœuds, il peut toujours avoir les comportements appliqués à la nouvelle de noeuds, sans avoir à connaître ce que les autres modules sont iinstalled:
var newNodes = $('<a href="#">Hello</a> <a href="#">World</a>').appendTo('#someDiv');
Drupal.attachBehaviors(newNodes);
Vous trouverez peut-être ce lien utile.
Si vous ne le dérange pas de payer 5 $pour les 13 minutes de vidéo, découvrez http://buildamodule.com/drupal-video/understanding-drupal-javascript-behaviors-video (Note: je n'ai pas de connexion à ces gars-là et ne peut pas se porter garant pour la vidéo. L'extrait semble décent)
Fonctionnalité Dupliquée
Notez que le Drupal.les comportements de l'architecture des doublons fonctionnalités déjà en jQuery.
Aussi, de cette écriture, il ne semble pas y avoir de la documentation ou des études de cas pour Drupal.les comportements à l'extérieur de Drupal lui-même; et la documentation à l'intérieur de Drupal (comme indiqué ci-dessus) pourrait bénéficier considérablement d'améliorations. De cette écriture, il semble que la principale documentation détaillée est en accès restreint pour les frais seulement.
Cela signifie que vous pouvez remarquer les performances de dégradation, les anomalies et les résultats inattendus de ne pas cohérente avec les jQuery qui sont endémiques à la Drupal.les comportements de l'écosystème.
Natif de Fonctionnalités jQuery
Contrairement à Drupal.les comportements, les fonctionnalités intégrées de la norme API jQuery est largement documentée , y compris en ligne, de démonstrations et d'exemples. En outre, il existe de nombreux exemples disponibles gratuitement sur des sites tels que jsfiddle.
Les liens dans la section voir aussi énumérer les appels de l'api de jQuery pertinents pour le traitement des nouveaux éléments du DOM inséré dans le document.
Voir aussi