如何通过传单js

时间:2015-08-10 11:01:28

标签: javascript leaflet

这里我有一个示例代码,显示相同但我想知道从哪里安排任何特定国家或城市的拉特朗。

这里为伦敦做的地图

var london = new L.LatLng(51.505, -0.09); 
map.setView(london, 13);

所以,如果有人知道特定国家的LatLng,那么它是可能的。但只是告诉是否有来源告诉我任何国家或城市的latlang。

这里是完整的示例代码

<html>
<head>
   <title>Leaflet Events Example</title>

   <link rel="stylesheet" href="leaflet/leaflet.css" />
   <!--[if lte IE 8]><link rel="stylesheet" href="leaflet/leaflet.ie.css" /><![endif]-->

   <script src="leaflet/leaflet.js"></script>

   <script language="javascript">
      var map;
      var popup = L.popup();

      function init() {

         map = new L.Map('map');
         popup = new L.Popup();

         L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
            attribution: '&copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors',
            maxZoom: 18
         }).addTo(map);
         map.attributionControl.setPrefix(''); // Don't show the 'Powered by Leaflet' text.

         var london = new L.LatLng(51.505, -0.09); 
         map.setView(london, 13);


         map.on('click', onMapClick);
      }

      //Listener function taking an event object 
      function onMapClick(e) {
         //map click event object (e) has latlng property which is a location at which the click occured.
         popup
           .setLatLng(e.latlng)
           .setContent("You clicked the map at " + e.latlng.toString())
           .openOn(map);
      }

   </script>

</head>
<body onLoad="javascript:init();">
   <div id="map" style="height: 200px"></div> <!-- width equals available horizontal space by default -->

</body>                                                                                                                          
</html>

另一个代码

<html>
<head>
   <title>Leaflet marker array example</title>

   <link rel="stylesheet" href="leaflet/leaflet.css" />
   <!--[if lte IE 8]><link rel="stylesheet" href="leaflet/leaflet.ie.css" /><![endif]-->

   <script src="leaflet/leaflet.js"></script>

   <script language="javascript">
      function init() {
         var map = new L.Map('map');                       

         L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
            attribution: '&copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors',
            maxZoom: 18
         }).addTo(map);
         map.attributionControl.setPrefix(''); // Don't show the 'Powered by Leaflet' text.

         var london = new L.LatLng(51.5056,-0.1213); 
         map.setView(london, 13);

         // Define an array. This could be done in a seperate js file.
         // This tidy formatted section could even be generated by a server-side script
         // or fetched seperately as a jsonp request.
         var markers = [
            [ -0.1244324, 51.5006728, "Big Ben" ],
            [ -0.119623, 51.503308, "London Eye" ],
            [ -0.1279688, 51.5077286, "Nelson's Column<br><a href=\"https://en.wikipedia.org/wiki/Nelson's_Column\">wp</a>" ] 
         ];

         //Loop through the markers array
         for (var i=0; i<markers.length; i++) {

            var lon = markers[i][0];
            var lat = markers[i][1];
            var popupText = markers[i][2];

             var markerLocation = new L.LatLng(lat, lon);
             var marker = new L.Marker(markerLocation);
             map.addLayer(marker);

             marker.bindPopup(popupText);
         }
     }
   </script>
</head>
<body onLoad="javascript:init();">
   <div id="map" style="height: 200px"></div>

</body>                                                                            
</html>

感谢

2 个答案:

答案 0 :(得分:1)

尝试使用Google Geocoding API。通过这个,您可以获得一个地址的LatLng。

答案 1 :(得分:1)

如果您只想知道任何国家/地区的 LatLng

例如,您想知道澳大利亚的LatLng,只需在谷歌中输入

澳大利亚长期如下

enter image description here