私がファイルから赤くしたように、readme
ファイルopenlayers.js
とテーマを含めるための複数の選択肢があります。
私が欲しいのはlightest solution of openlayers.js
ファイルを使うことです。
私openlayers.light.js
は自分のアプリにを含めました、そしてそれは地図を作成しますがそれらを表示しません、これをチェックしてください:
他のファイルを含めるのを忘れましたか?
私の構造構造はこれです:
/vendor
/js
openlayers.light.js
/img
/theme
マップレイヤーを表示する方法は?
またopenlayers.light.js
、モバイルデバイスでも機能しますか(この問題を修正すると:P)?または私も含める必要がありopenlayers.mobile.js
ますか?
これは、openlayers.light.jsでは機能しないが、openlayers.js(740kb)では機能するコードです。
var _element = "#map";
var map = new OpenLayers.Map (_element, {
controls: [
new OpenLayers.Control.Navigation({
dragPanOptions: {
enableKinetic: true
}
}),
new OpenLayers.Control.Zoom()
],
projection: new OpenLayers.Projection("EPSG:900913"),
displayProjection: new OpenLayers.Projection("EPSG:4326")
});
var lonLat = new OpenLayers.LonLat(_lon, _lat).transform (
new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984
new OpenLayers.Projection("EPSG:900913") // to Spherical Mercator Projection
// map.getProjectionObject() doesn't work for unknown reason
);
var markers = new OpenLayers.Layer.Markers( "Markers" );
map.addLayer(markers);
var size = new OpenLayers.Size(21,25);
var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
var icon = new OpenLayers.Icon(_img_map_marker, size, offset);
markers.addMarker(new OpenLayers.Marker(lonLat, icon.clone()));
var mapnik = new OpenLayers.Layer.OSM("Test");
map.addLayer(mapnik);
map.setCenter (lonLat,3);
PS:私のopenlayers map js initメソッドは大丈夫です、それは巨大なものを使用して動作しますopenlayers.js (740KB)
が、上に示したようにopenlayers.light.jsでは動作しません
html
<div id="map"></div>
css
img{max-width:none;}
#map{
width:300px;
height:300px;
}