Je suis l'aide d' requirejs
et besoin d'initialiser quelque chose sur les dom prêt.
Maintenant,
Requirejs fournit :
domReady plugin
: http://requirejs.org/docs/api.html#pageload
Mais, nous avons déjà jquery's $(document).ready()
qui est disponible pour moi, depuis que j'ai exigé jquery
.
Maintenant, j'ai 2 options :
require(['domReady'], function (domReady) {
domReady(function () {
// Do my stuff here.
});
});
OU
$(document).ready(function() {
// Do my stuff here.
});
Que dois-je choisir et pourquoi ?
- Les deux options semble fonctionner comme prévu.
- Je ne suis pas confiant dans de jquery dom prêt parce que requirejs est en train de faire sa magie -- qui est, depuis requirejs dynamiquement ajouter des scripts, j'ai peur que DOM prêt peut se produire avant que l'ensemble de la dynamique demandé scripts sont chargés.
- Alors que, requirejs va ajouter un fardeau supplémentaire js juste pour domReady quand j'ai déjà jQuery nécessaire.
Mise à jour
- Pourquoi est -
requirejs
fournit undomReady
plugin où nous pouvons avoir de jquery$(document).ready();
? - Je ne vois pas l'avantage d'inclure une autre dépendance.
- Si c'est juste pour nourrir un besoin, alors pourquoi ne pas en fournir un
Cross Browser
ajax ?
Mise à jour 2 [ autant que je sache ]
- Un module qui exige
domReady
ne seront pas récupérés ou exécutés après le document est prêt. - Depuis, il fournit :
(1) domReady
require(['domReady'], function (domReady) {
domReady(function () {
//This function is called once the DOM is ready.
//It will be safe to query the DOM and manipulate
//DOM nodes in this function.
});
});
- Requirejs ne fonctionne pas différemment
domReady
. [ via @Gert Sønderby ] - On pourrait faire la même avec JQuery :
(2) $(document).prêt()
require(['jQuery'], function ($) {
$(document).ready(function () {
//This function is called once the DOM is ready.
//It will be safe to query the DOM and manipulate
//DOM nodes in this function.
});
});
Afin d'être plus clair sur ma question :
- Prière de faire la distinction (1) vs (2)