Bonjour,

Je suis en train de développer une galerie de photos en JQuery (v1.11.2). Tous les paramètres de la page seront définis dans un fichier XML généré par une application externe, qui pour l'instant est écrit à la main.
Lorsque j'exploite le fichier XML, Internet explorer plante sauvagement, tandis que Firefox et Chrome font le boulot.

Cependant, dans la console de Firefox, je trouve un certain nombre de lignes "Mal formé" (sans autre explication ni référence de ligne).
Dans internet explorer, j'ai placé des couples try/catch pour trouver l'erreur. Le résultat est :
TypeError : impossible d'obtenir la propriété "replace" d'une référence null ou non définie.
Pourtant mon fichier XML me semble au carat. D'ailleurs s'il ne l'est pas (j'ai essayé), j'ai le message d'erreur du $.get dans tous les navigateurs.
Quelqu'un a t-il une idée d'où provient l'erreur ? Je n'ai rien trouvé dans les FAQ qui ressemble à mon problème.
Et je (re)précise que dans Firefox et Chrome, tous mes paramètres sont parfaitement lus.

Pour info : IE : version 11.0.7, Firefox : Version 35.0, Chrome : Version 39.0.2171.99 m

Voici le code de lecture du fichier XML :
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
 
  var indexname = 'index.xml'
  $.get(indexname, null, null, 'xml')
  .success(readXML)
  .fail(function() { alert("Le fichier de description de l'album (" + indexname + ")\nn'a pas été trouvé dans le répertoire de l'album\nou sa structure est incorrecte.") });
 
...
function readXML()
{
  var title = $(xml).find('common').find('title').html();
  var size = parseInt($(xml).find('common').find('slidesize').html());
  .....
  $(xml).find('album').find('slide').each(function()
  {
     var title = $(this).find('title').text();
     var file = $(this).find('file').text();
     var ratio = parseFloat($(this).find('ratio').text());
     ....
  }
}
Internet Explorer plante dès le premier find().

Voici le contenu (abrégé) du fichier XML :
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
 
<?xml version="1.0" encoding="utf-8"?>
<album>
    <common>
        <title>Titre de l'album</title>
        <comment>Ceci est un album realisé entièrement en JavaScript<br /><br />Il utilise JQuery et WebAlbums</comment>
        <slidesize>240</slidesize>
        <legendabove>1</legendabove>
    </common>
    <styles>
        <body>
            <font-family>Verdana, Arial, Helvetica, sans-serif</font-family>
            <font-size>12px</font-size>
            <color>#000000</color>
            <background-color>#EEFFFF</background-color>
            <margin-top>0px</margin-top> 
        </body>
        <div-container>
            <margin>0 auto 0 auto</margin>
            <background-color>#FFF</background-color>
            <display>table</display>
        </div-container>
        <div-title>
            <text-align>center</text-align>
        </div-title>
        <div-comment>
            <text-align>justify</text-align>
        </div-comment>
        <class-vignette>
            <width>300px</width>
            <border-width>1px</border-width>
            <border-style>solid</border-style>
            <border-color>#CCC</border-color>
            <margin>5px</margin>
            <float>left</float>
            <text-align>center</text-align>
        </class-vignette>
    </styles>
    <slide>
            <title>Dome &quot;1&quot;</title>
            <file>Dome1.jpg</file>
            <ratio>0.667</ratio>
    </slide>
    <slide>
            <title>Dome à Fira (Santorin)</title>
            <file>Dome2.jpg</file>
            <ratio>1.5</ratio>
    </slide>
...
    <slide>
            <title>Rue à Pyrgos (Santorin)</title>
            <file>Rue3.jpg</file>
            <ratio>0.667</ratio>
    </slide>
</album>