Je reçois cette erreur Texte alt http://img239.imageshack.us/img239/6936/jserror. PNG lorsque la carte est chargée. P>
L'erreur est dans le fichier OpenLayers original, non modifié.js sur cette ligne: p>
J'ai essayé de la réécrire à: p>
et cela a fonctionné, mais j'ai alors les mêmes erreurs "non spécifiées" sur des références supplémentaires au document.NamesPaces: p>
J'ai essayé de réécrire cela à: p>
mais je reçois la même erreur "non spécifiée". p>
Je reçois seulement cette erreur sur Internet Explorer (j'ai testé sur 7) et non dans Firefox. P>
Tous les indices? P>
Merci. P> retour !! (document.names espaces); code> p>
retour (typeof (document.names espaces)! = 'non défini'); code> p>
si (! document.namespaces.olv) {document.namespaces.add ("OLV", ceci.xmlns); ... code> p>
si (typeof (document.namespaces.olv) == 'non défini') {... code> p>
3 Réponses :
J'ai trouvé la solution.
Le problème était que je créais la carte lorsque le DOM était prêt avec jQuery: p> Tout ce que vous avez à faire est Pour créer la carte après l'événement ONLOAD: P> window.onload = function() { ... // create map here [CORRECT]
Écraser tous les événements .Onload avec le vôtre n'est guère une bonne chose à faire
Nous avions des problèmes dans Firefox avec Windows.Onload, donc opté à la place pour $ (fenêtre) .bind ("charger", fonction () {
Le problème avec Internet Explorer est que lorsque la page frappe le document prêt ou la fenêtre Onload, ce navigateur M $ ne peut pas encore déterminer les dimensions du canevas de la carte. Si vous souhaitez contourner cela, vous pouvez également envisager de définir votre carte DIV DIMENSIONS:
<div id="map" style="width:250px;height:250px"></div>
Merci, tu as sauvé mes fesses! Je n'ai besoin que de définir explicitement une hauteur et non de largeur, ymmv.
Le problème réel est que le document.Names espaces n'est pas prêt dans IE8 parfois lorsqu'il déclenche $ (document) .Ready (à cause de VML)
Vous pouvez utiliser à la place: P>
jQuery(window).load(function() {} ...);