Bonjour,

Lorsque j'ouvre une "Modal dialog" sous internet explorer pour la première fois, ça fonctionne très bien.
Mais si je ferme le dialog et que je tente de le réouvrir la page devient grise (normal puisque c'est une "modal"), mais le dialog n'apparait pas. Bon au moins je peux toujours revenir à la page normal avec "Escap".

Ce qui est étonnant c'est que sur "Google Chrome" et "Mozilla firefox" ça fonctionne très bien, je peux ouvrir et ré-ouvrir ma fenêtre comme je veux.

J'utilise "jquery-1.4.2.min.js" et "jquery-ui-1.8.1.custom.min.js"
Voici le code javascript en question:
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<script language="javascript">
		<!--
		$(function()
		{
			// initialise l'image de chargement et le texte qui va avec
		});
 
		images=new Array; // variable globale qui retien les images déjà vues, afin d'éviter de les recharger
		function showImage(url)
		{
			// prépare le dialog
			$('#dialog_img').dialog({
				height: ($(window).height()-20),
				width: ($(window).width()/2),
				closeText: 'hide',
				draggable: false,
				resizable: false,
				title: '<?php echo $languages_dialog_img['loading_title']; ?>',
				show: 'clip',
				hide: 'highlight',
				modal: true,
				beforeClose: function()
				{
					// si on ferme le dialog, on remet tout comme avant (car entre deux je changerai des valeurs)
					document.getElementById("dialog_img_img").src="design/<?php echo $_SESSION['style'];?>/images/loading_img.gif";
					document.getElementById("dialog_img_img").style.display="inline";
					document.getElementById("dialog_img_message").style.display="block";
					document.getElementById("dialog_img_message").innerHTML="<?php echo $languages_dialog_img['loading']; ?>";
					$('#dialog_img').dialog("option", "title", '<?php echo $languages_dialog_img['loading_title']; ?>');
				}
			});
 
			// on a déjà vu cette image
			if(inArray(images, url))
			{
				// on met à jour la source de l'image et on efface le message de chargement
				document.getElementById("dialog_img_img").src=url;
				document.getElementById("dialog_img_message").style.display="none";
				$('#dialog_img').dialog("option", "title", '<?php echo $languages_dialog_img['title']; ?>');
			}
			// on n'a jamais ouvert cette image
			else
			{
				// on crée une nouvelle variable image (ce n'est pas le tableau plus haut, ici "image" est au singulier)
				var image=new Image;
				image.onload=function() // Lorsque l'image est chargée
				{
					// on met à jour la source de l'image et on efface le message de chargement
					document.getElementById("dialog_img_img").src=image.src;
					document.getElementById("dialog_img_message").style.display="none";
					$('#dialog_img').dialog("option", "title", '<?php echo $languages_dialog_img['title']; ?>');
					// on rajoute cette image au tableau des images déjà vues
					images.push(image);
				}
				// s'il y a une erreur avec l'image
				image.onerror=function()
				{
					//on rend l'image invisible (pour éviter le "lien cassé") et on met à jour le texte et le titre
					document.getElementById("dialog_img_img").style.display="none";
					document.getElementById("dialog_img_message").style.display="block";
					document.getElementById("dialog_img_message").innerHTML="<?php echo $languages_dialog_img['error']; ?>";
					$('#dialog_img').dialog("option", "title", '<?php echo $languages_dialog_img['error_title']; ?>');
				}
				// on commence à charger l'image
				image.src=url;
			}
		}
 
		// return "true" l'élément "string" se trouve dans le tableau, sinon "false"
		function inArray(table, string)
		{
			for(i=0; i<table.length; i++)
			{
				if(table[i].src==string)
				{
					return true;
				}
			}
			return false;
		}
		-->
</script>

Merci d'avance à celles et ceux qui me répondront