2013-02-12 42 views
2

我想在PhoneGap应用程序上使用OpenStreetMap。PhoneGap上的OpenStreetMap

我的问题是点击事件没有在PhoneGap上触发。

下面的代码工作在正常浏览器:

<!DOCTYPE HTML> 
<html> 
    <head> 
    <title>OpenLayers Demo</title> 
    <style type="text/css"> 
     html, body, #basicMap { 
      width: 100%; 
      height: 100%; 
      margin: 0; 
     } 
    </style> 
    <script src="http://www.openlayers.org/api/OpenLayers.js"></script> 
    <script> 
    function init() { 
    map = new OpenLayers.Map("basicMap"); 
    var mapnik   = new OpenLayers.Layer.OSM(); 
    var fromProjection = new OpenLayers.Projection("EPSG:4326"); // Transform from WGS 1984 
    var toProjection = new OpenLayers.Projection("EPSG:900913"); // to Spherical Mercator Projection 
    var position  = new OpenLayers.LonLat(7.55785346031189,50.3625329673905).transform(fromProjection, toProjection); 
    var zoom   = 18; 

    map.addLayer(mapnik); 
    map.setCenter(position, zoom); 

    var markers = new OpenLayers.Layer.Markers("Markers"); 
    map.addLayer(markers); 

    var marker = new OpenLayers.Marker(position); 

    marker.events.register("click", map , function(e){ alert("click"); 
    }); 

    markers.addMarker(marker); 
    } 
</script> 
</head> 
<body onload="init();"> 
    <div id="basicMap"></div> 
</body> 
</html> 

当该代码在PhoneGap的以显示地图,示出了地图,并显示所述标记。但是,当我点击标记时没有任何反应。

有谁知道为什么这不起作用。我正在使用Android模拟器,并使用Eclipse来创建PhoneGapApplication。

回答

0

@亚历山大,这是没有确定的答案,只是一个提示,但你有没有尝试Leaflet.js,看看它的工作?从来没有为PhoneGap开发,但我有几个使用Leaflet的Android/iOS设备的移动网站没有问题。