2015-08-31 3 views
1

Я делаю сайт ASP.NET с картой OpenLayers, но в IE он всегда загружается, и в Chrome говорится, что сайт не реагирует через некоторое время. Сценарий находится внутри тега контента.
И я использую выпуск 2.13.1.
Это код:Карту OpenLayers не удалось загрузить правильно

<script type="text/javascript" src="../Scripts/OpenLayers.js" ></script> 

    <script type="text/javascript" src="../Scripts/expand.js"></script> 

    <!-- map built with OpenLayers api on OpenStreetMap --> 
    <script type="text/javascript"> 
     map = new OpenLayers.Map("mapdiv"); 
     map.addLayer(new OpenLayers.Layer.OSM()); 

     epsg4326 = new OpenLayers.Projection("EPSG:4326"); // WGS 1984 projection 
     projectTo = map.getProjectionObject(); // The map projection (Spherical Mercator) 

     // Define center-point 
     var lonLat = new OpenLayers.LonLat(8.2891666666666666666666666, 46.8344444444444444444).transform(epsg4326, projectTo); 
     map.setCenter(lonLat, 8); 

    </script> 

ли моя ссылка неправильно или я забыл что-то другое?

+0

попытку дать высоту или ширину DIV, как <стиль типа = "текст/CSS"> HTML, тело, # mapdiv { \t ширина: 100%; \t высота: 100%; \t margin: 0; } –

ответ

0

Вы используете синтаксис OpenLayers 2 с библиотекой OpenLayers 3. Ключевое различие скорее, чем сказать

map = new OpenLayers.Map("mapdiv"); 

Вы хотите использовать

var map = new ol.Map("mapdiv"); 

Вам нужно исправить другие случаи, когда вы используете «OpenLayers» вместо «ол».

link, чтобы начать работу с документацией OpenLayers 3.

+0

О, поэтому я использовал синтаксис rigth, потому что я использовал другой js, который был фактически версией 2. – aha364636

0

Попробуйте это будет работать

<html> 
<head> 
<title>OpenLayers Demo</title> 
<style type="text/css"> 
html,body,#mapdiv { 
    width: 100%; 
    height: 100%; 
    margin: 0; 
} 
</style> 

<script src="../js/OpenLayers.js" type="text/javascript"></script> 
<link rel="stylesheet" type="text/css" href="../css/ol-theme-style.css" /> 
</head> 
<body> 
<div id="mapdiv"></div> 
<script> 
map = new OpenLayers.Map("mapdiv"); 
map.addLayer(new OpenLayers.Layer.OSM()); 

epsg4326 = new OpenLayers.Projection("EPSG:4326"); //WGS 1984 projection 
projectTo = map.getProjectionObject(); //The map projection (Spherical Mercator) 

var lonLat = new OpenLayers.LonLat(73.8567, 18.5203).transform(epsg4326, projectTo); 

var zoom = 14; 
map.setCenter(lonLat, zoom); 
</script> 
</body> 
</html> 
Смежные вопросы