Bonjour à tous,

J'ai un petit soucis avec Jquery UI 1.8.18 sous Chrome uniquement.
En faite j'affiche une barre de chargement dans un dialog avec le paramètre modal:true, tout fonctionne parfaitement sous FF, IE, mais pas sur Chrome, il ne m'affiche tout simplement pas le dialog.

Voici ce que j'ai fait pour générer et modifier l'état de chargement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
 
(function($){
    //Constructeur de l'objet Modal Loader
    function modalLoader($$,options) {
	    this.options = options;
 
        if(options.close == true){
            $$.remove();
        }
        else if(options.etat > 0 && options.txt != ''){
            this.etat(options.etat,options.txt);
        } 
        else{
            $$.append(structure(this.options));
            $$.dialog({modal:this.options.modal, width:this.options.width, height:this.options.height});
            $(".ui-dialog-titlebar").hide();
            $(".ui-dialog").css({padding:0,margin:0})
        } 
        //console.log($(this));
    };
 
    function structure(opts){
        r = '<div class="ui-helper-clearfix ui-state-default contentLoader-title" style="border:none;border-bottom:solid 1px #ddd;">'+opts.title+'</div>';
        r += '<div class="dialog-content">Veuillez patientez pendant le chargement...</div>'
           + '  <div id="progressbar"></div>'
           + '  <div id="progresstxt" class="dialog-content"></div>';
 
        return r;       
    }
    //Cette methode permet de modifier l'état d'avancement
    modalLoader.prototype.etat = function(s,t) {
	    $("#progressbar").progressbar({ value: s });
        $("#progresstxt").html(t);
    }   
 
    $.fn.modalLoader = function (options) {
	    //Nous étendons les options passé en paramètre avec nos par défauts (de telle manière à ce que ce soit les options passées en paramètre qui surcharge les options par défaut)
	    var optExtended = $.extend({
	       etat: 0,
           title: 'Mon titre du dialog',
           txt: '',
           width: 500,
           height: 300,
           modal: true,
           close: false,
	    }, options);
 
	    //Créé un objet slideshow pour chaque DOMObject sélectionné
	    return this.each(function () {
		    new modalLoader($(this), optExtended);
	    });
    }
})(jQuery);
et donc je l'appel de cette facon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
$(document).ready(function(){
    $('<div id="contentLoader" class="contentLoader" style="padding:0;"></div>').modalLoader({ title: 'Chargement...', width: 500, height: 300, });
});
Celà fonctionne donc sous FF, IE, mais ne marche pas sous Chrome, si quelqu'un peut m'aider à résoudre ce problème et à comprendre pourquoi celà ne fonctionne pas sous Chrome.

D'avance merci
Spliffer