2012-02-06 53 views
0

我有這個HTML文件:地理定位功能的移動

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8" /> 
    <title></title> 

    <meta name="description" content="" /> 
    <meta name="author" content="Salvatore Mazzarino" /> 

    <meta name="viewport" content="width=device-width; initial-scale=1.0" /> 

    <!-- jquery mobile scripts --> 
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile- 1.0.1.min.css" /> 
    <script src="http://code.jquery.com/jquery-1.6.4.min.js"></script> 
    <script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script> 

    <!-- my own style sheet --> 
    <link rel="stylesheet" href="./assets/css/style.css" type="text/css" /> 

    <!-- google maps api script --> 
    <script type="text/javascript" src="./includes/js_map.js"></script> 
    <script src="http://maps.google.com/maps/api/jssensor=false"></script> 
</head> 

<body> 

    <div data-role = "page" id = "map-page"> 
     <div data-role = "header"> 
      <h1>Your position</h1> 
     </div> 

     <div data-role = "content" id = "map-canvas"> 
      <!-- here the map --> 
     </div> 
    </div> 

</body> 
</html> 

和這個js文件:

 $("#map-page").live("pageinit", function() 
           { 

// Default to Via Messina,Catania,IT when no geolocation support 
var defaultLatLng = new google.maps.LatLng(37.530073, 15.112151); 

if (navigator.geolocation) 
{ 

    function success(pos) 
    { 

     // Location found, show coordinates on map 
     drawMap(new google.maps.LatLng(pos.coords.latitude, pos.coords.longitude)); 
    } 

    function fail() 
    { 

     drawMap(defaultLatLng); // Show default map 
    } 

    // Find users current position 
    navigator.geolocation.getCurrentPosition(success, fail, {enableHighAccuracy:true, timeout: 6000, maximumAge: 500000}); 

} 
else 
{ 
    drawMap(defaultLatLng); // No geolocation support 
} 

function drawMap(latlng) { 

     var myOptions = { 
      zoom: 10, 
      center: latlng, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 

     var map = new google.maps.Map(
     document.getElementById("map-canvas"), myOptions); 
     // Add an overlay to the map of current lat/lng 
     var marker = new google.maps.Marker({ 
     position: latlng, 
     map: map, 
     title: "Greetings!" 
     }); 
} 
}); 

我想獲得我的position.in一個MAS應該出現在HTML頁面但沒有任何默認地圖。爲什麼?任何想法?

回答

1

沒有看到您的實時代碼,很難看到是否有任何CSS可能導致顯示問題。不過,也有需要加以固定至少兩件事情:需要

  1. 您對谷歌地圖API調用移動上述自己的JS文件(在文檔的頭部)。

  2. 您在導入Maps API JS文件的URL中有錯誤。從更改:

http://maps.google.com/maps/api/jssensor=false

到:

http://maps.google.com/maps/api/js?sensor=false

我能得到加載地圖,並在地圖中間顯示一個標記。