Changeset 59867 in spip-zone


Ignore:
Timestamp:
Mar 28, 2012, 10:51:54 AM (7 years ago)
Author:
marcimat@…
Message:

É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é.

Location:
_plugins_/inclure-ajaxload
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/inclure-ajaxload/javascript/inclure-ajaxload.js

    r45190 r59867  
    11jQuery(document).ready(function($) {
    2         $('.includeajax').each(function() {
    3                 var me = $(this);
    4                 var env = $('a', this).attr('rel');
    5                 if (env) {
    6                         $('a', this).attr('href','#');
    7                         $.ajax({
    8                                 url: "spip.php",
    9                                 type: "GET",
    10                                 cache: true,
    11                                 data: { var_ajax: 'recuperer', var_ajax_env: env },
    12                                 success: function(c) { me.html(c); }
    13                         });
    14                 }
    15         });
    16         $('.includestatic').each(function() {
    17                 var me = $(this);
    18                 var env = $('a', this).attr('rel');
    19                 if (env) {
    20                         $('a', this).attr('href','#');
    21                         $.ajax({
    22                                 url: env,
    23                                 type: "GET",
    24                                 cache: true,
    25                                 success: function(c) { me.html(c); }
    26                         });
    27                 }
    28         });
     2        function charger_inclure_ajaxload() {
     3                $('.includeajax').each(function() {
     4                        var me = $(this);
     5                        var env = $('a', this).attr('rel');
     6                        if (env) {
     7                                $('a', this).attr('href','#');
     8                                $.ajax({
     9                                        url: "spip.php",
     10                                        type: "GET",
     11                                        cache: true,
     12                                        data: { var_ajax: 'recuperer', var_ajax_env: env },
     13                                        success: function(c) { me.html(c).removeClass('includeajax_load').addClass('includeajax_loaded'); }
     14                                });
     15                        }
     16                }).removeClass('includeajax').addClass('includeajax_load');
     17                $('.includestatic').each(function() {
     18                        var me = $(this);
     19                        var env = $('a', this).attr('rel');
     20                        if (env) {
     21                                $('a', this).attr('href','#');
     22                                $.ajax({
     23                                        url: env,
     24                                        type: "GET",
     25                                        cache: true,
     26                                        success: function(c) {  me.html(c).removeClass('includestatic_load').addClass('includestatic_loaded'); }
     27                                });
     28                        }
     29                }).removeClass('includestatic').addClass('includestatic_load');
     30        }
     31        charger_inclure_ajaxload();
     32        onAjaxLoad(charger_inclure_ajaxload);
    2933});
  • _plugins_/inclure-ajaxload/plugin.xml

    r56877 r59867  
    44        <auteur>Fil, ARNO*</auteur>
    55        <licence>&#169; 2009 GNU/GPL</licence>
    6         <version>1.1.1</version>
     6        <version>1.2.0</version>
    77        <etat>stable</etat>
    88        <description>
Note: See TracChangeset for help on using the changeset viewer.