Suite

Pourquoi ne puis-je pas charger une liste de couches à sélectionner sur la carte dans openLayers 3, addEventListener et attachEvent ne sont pas disponibles


J'ai essayé d'incorporer cet exemple qui montre comment basculer les couches de base dans une page sur laquelle je travaille :

http://openlayers.org/en/v3.10.1/examples/bing-maps.html

Lorsque j'essaie de charger ma page avec le code inclus, j'obtiens cette erreur :Erreur non détectée : addEventListener et attachEvent ne sont pas disponibles. ol.js:34. J'ai googlé cela certains mais je n'ai pas encore trouvé la réponse. Voici tout le code de ma page - j'ai reconstitué le code à partir de divers exemples, donc je sais qu'il a besoin d'être nettoyé, mais je voulais inclure tout ce que j'ai pour référence. Quelqu'un peut-il aider?

METTRE À JOUR:

J'ai constaté que lorsque je supprime layerVector de la liste des couches pour l'ajouter à la carte, je n'obtiens plus l'erreur. Maintenant, ma question est vraiment : comment puis-je avoir la fonctionnalité de choisir une couche de base, tout en conservant toujours la couche vectorielle ?

   Exemple de couche vectorielle              

le problème vient de la façon dont vous déclarez les couches lors de l'initialisation de votre carte. donc ce morceau de ton code :

var map = new ol.Map({layers : [baseLayers, layerVector], loadTilesWhileInteracting : true, target : document.getElementById('map'), view : new ol.View({ //projection:projection center : ol.proj .transform( [-116, 42], 'EPSG:4326', 'EPSG:3857'), zoom: 6 }) });

devrait changer en ceci:

var layerToAdd = baseLayers.concat(layerVector); var map = new ol.Map({ layer: layerToAdd , loadTilesWhileInteracting: true, target: document.getElementById('map'), view: new ol.View({ //projection:projection center: ol.proj.transform( [ -116, 42], 'EPSG:4326', 'EPSG:3857'), zoom : 6 }) });

Il semble que la façon dont vous passez les couches sur la carte n'est pas un tableau approprié. ainsi concaténer le tableau de couches de base avec la couche vectorielle, forme un tableau approprié. J'ai aussi fait o violon vérifier ici pour tester. Il y a de légères modifications de votre code mais la pièce que j'ai mentionnée ci-dessus semble causer le problème. J'espère vous aider !!!!