Compatibilité Javascript IE

Fermé
fabde64 - 14 mai 2012 à 15:57
 fabde64 - 15 mai 2012 à 12:07
Bonjour,

Malgrè un petit niveau en JS, j'ai réussi à développer via la librairie js raphael un script permettant d'afficher dynamiquement une carte des départements de france, de changer la couleur du département survolé et lui attribuer un lien.

Cela fonctionne parfaitement sous chrome et FF, mais très mal sous IE.

Un âme charitable pourrai-t-elle m'aider svp ?

Merci d'avance.

Voici mon script (je copie le code pour un département seulement, pour ne pas surcharger le post, je pense que le problème vient de toute façon de la fonction..) :


window.onload = function() {
var Paper = new Raphael(document.getElementById('canvas_france'), 600, 600);

var dep = {};
dep.Bouches_du_Rhone13 = Paper.path("M379.719,433.01l-5.469,3.125l-1.406,10.499l-5.781-0.813l-1.656,4.405l1.375,1.938l-6.344,3.875l-1.75,4.063l6.188,0.281l8.22,0.594l1.563,1.563h-2.938l-1.938,3.313l8.375,1.75l6.656-1.155l-3.531-3.345l2.344-1.938l3.72,1.563l1.75,3.72l11.155,0.188l2.906-1.188l0.594,1.78l-3.125,2.72l4.313,0.188l-0.781,1.969l-1.188,1.375h9.563l4.688,1.563l0.469,0.625l0.188-3.875l1.406-1.594l1.781-1.063l-0.188-1.063l-1.406-1.406h-1.406l-0.906-1.063l1.594-1.438v-0.531l-1.75-0.875v-1.406l3.875,0.188l0.906-0.719l-3.375-3.188l0.188-3.719l-2.125-1.75l1.75-3.531l4.25-2.844l-3.188-2.124l-2.281,1.78l-5.313,1.219l-4.25-0.531l-7.594-3.154l-4.594,0.155l-3.875-1.75l-1.438-1.969l-3-3.344l-7.063-3L379.719,433.01z").tooltip(Paper.rect(0,0,20,30)).attr({fill: "#007d40",stroke: "#666",title:"Bouches du Rhone",href:"http://www.mvpro.fr/LCE/?page_id=219"});

var current = null;
for (var nom in dep) {
dep[nom].color = Raphael.getColor();
(function (st, nom) {
st[0].style.cursor = "pointer";
st[0].onmouseover = function () {
current = nom;
current && dep[current].animate({fill: "#007d40", stroke: "#666"}, 500);
st.animate({fill: "#EEE", stroke: "#ccc"}, 500);
st.toFront();
Paper.safari();

};
st[0].onmouseout = function () {
st.animate({fill: "#007d40", stroke: "#666"}, 500);
st.toFront();
Paper.safari();
};
if (nom == "nsw") {
st[0].onmouseover();
}
})(dep[nom], nom);
}
A voir également:

1 réponse

up plz ?
0