J'utilise un système basé sur PHP pour générer des pages HTML à partir d'un modèle et d'une série de fichiers inclus.
Tous les scripts (qu'ils soient liés ou en ligne) sont extraits de ces inclusions et placés au début ou à la fin de la page générée.
Les scripts en ligne sont combinés en un seul script en ligne.
Tout cela fonctionne bien. La seule chose qui me manque est une façon de combiner les multiples fonctions $ (document) .ready jQuery en une seule fonction.
Alors que cela fonctionne bien ayant les fonctions multiples, pour l'esthétique et la lisibilité, il serait bien d'avoir une seule fonction $ (document) .ready.
Pour donner un exemple, je veux être en mesure d'analyser ceci:
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$('.icheck').iCheck({
checkboxClass: 'icheckbox_minimal-green',
radioClass: 'iradio_minimal-green',
});
$('.icheckblack').iCheck({
checkboxClass: 'icheckbox_minimal',
radioClass: 'iradio_minimal',
});
});
$(document).on("eldarion-ajax:begin", function(evt, $el) {
$(".noData").remove();
$("#" + $el.data("bq")).show();
});
$(document).ready(function() {
$(".commentToggle").each(function(index) {
$(this).click(function() {
var tl_id = $(this).data('tl_id');
$("#commentForm" + tl_id).toggle();
});
});
});
$(function() {
$('#email_content').redactor();
});
</script>
Dans ceci:
<script language="javascript" type="text/javascript">
$(document).on("eldarion-ajax:begin", function(evt, $el) {
$(".noData").remove();
$("#" + $el.data("bq")).show();
});
$(function() {
$('#email_content').redactor();
});
$(document).ready(function() {
$(".commentToggle").each(function(index) {
$(this).click(function() {
var tl_id = $(this).data('tl_id');
$("#commentForm" + tl_id).toggle();
});
});
$('.icheck').iCheck({
checkboxClass: 'icheckbox_minimal-green',
radioClass: 'iradio_minimal-green',
});
$('.icheckblack').iCheck({
checkboxClass: 'icheckbox_minimal',
radioClass: 'iradio_minimal',
});
});
</script>
J'ai vu des questions similaires qui n'ont pas vraiment été répondu , mais ont pointé dans la direction de Tim Whitlock's jParser mais ce n'est pas très bien documenté et semble être trop pour mes besoins.
J'ai envisagé d'utiliser quelque chose autour de preg_match_all, mais je ne pense pas que JavaScript soit suffisamment cohérent dans sa structure/formatage pour que cela soit fiable.
[Vous pouvez avoir plusieurs gestionnaires $ (document) .ready sur une seule page] (https: // stackoverflow.com/questions/1327756/can-vous-avez-multiple-document-readyfunction-sections) –