Skip to content
Extraits de code Groupes Projets
Valider 92462c77 rédigé par marcimat@rezo.net's avatar marcimat@rezo.net
Parcourir les fichiers

Évolution du plugin inclure-ajaxload en encapsulant le javascript dans une...

Évolution du plugin inclure-ajaxload en encapsulant le javascript dans une fonction, que l'on rappelle elle-même lors d'un chargement ajax : de la sorte si une inclusion {ajaxload} est chargée dans un squelette lui-même ajouté en ajax (par exemple avec l'ajax parallèle des blocs de ZPIP), l'inclusion sera réellement faite. 

Pour éviter une récursion, les classes .includeajax et .includestatic sont renommées lorsque le js les a traitées. On les suffixe de _load pendant le chargement, et de _loaded une fois le chargement réalisé.
parent e0d15bdd
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
jQuery(document).ready(function($) {
$('.includeajax').each(function() {
var me = $(this);
var env = $('a', this).attr('rel');
if (env) {
$('a', this).attr('href','#');
$.ajax({
url: "spip.php",
type: "GET",
cache: true,
data: { var_ajax: 'recuperer', var_ajax_env: env },
success: function(c) { me.html(c); }
});
}
});
$('.includestatic').each(function() {
var me = $(this);
var env = $('a', this).attr('rel');
if (env) {
$('a', this).attr('href','#');
$.ajax({
url: env,
type: "GET",
cache: true,
success: function(c) { me.html(c); }
});
}
});
});
\ No newline at end of file
function charger_inclure_ajaxload() {
$('.includeajax').each(function() {
var me = $(this);
var env = $('a', this).attr('rel');
if (env) {
$('a', this).attr('href','#');
$.ajax({
url: "spip.php",
type: "GET",
cache: true,
data: { var_ajax: 'recuperer', var_ajax_env: env },
success: function(c) { me.html(c).removeClass('includeajax_load').addClass('includeajax_loaded'); }
});
}
}).removeClass('includeajax').addClass('includeajax_load');
$('.includestatic').each(function() {
var me = $(this);
var env = $('a', this).attr('rel');
if (env) {
$('a', this).attr('href','#');
$.ajax({
url: env,
type: "GET",
cache: true,
success: function(c) { me.html(c).removeClass('includestatic_load').addClass('includestatic_loaded'); }
});
}
}).removeClass('includestatic').addClass('includestatic_load');
}
charger_inclure_ajaxload();
onAjaxLoad(charger_inclure_ajaxload);
});
......@@ -3,7 +3,7 @@
<slogan>Ajoute une option <code>{ajaxload}</code> &#224; la balise <code>#INCLURE</code></slogan>
<auteur>Fil, ARNO*</auteur>
<licence>&#169; 2009 GNU/GPL</licence>
<version>1.1.1</version>
<version>1.2.0</version>
<etat>stable</etat>
<description>
Ce plugin ajoute une option <code>{ajaxload}</code> &#224; la balise <code>#INCLURE</code>. La noisette n'est alors pas incluse, mais charg&#233;e dynamiquement en Ajax au chargement de la page.
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter