最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS使用百度地圖API自動獲取地址和經(jīng)緯度操作示例

 更新時間:2019年04月16日 11:50:43   作者:Zhihua_W  
這篇文章主要介紹了JS使用百度地圖API自動獲取地址和經(jīng)緯度操作,結合實例形式分析了javascript與百度地圖API接口交互實現(xiàn)獲取地址與經(jīng)緯度相關操作技巧,需要的朋友可以參考下

本文實例講述了JS使用百度地圖API自動獲取地址和經(jīng)緯度操作。分享給大家供大家參考,具體如下:

在實際工作中我們經(jīng)常會遇到這樣的問題,但是當我們?nèi)タ窗俣華PI的時候往往又達不到我們的要求。

故此,本篇博文講述如何使用百度地圖API自動獲取地址和經(jīng)緯度:

1、HTML代碼如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>點擊地圖獲取地址和經(jīng)緯度map,address,lng,lat</title>
  <meta name="robots" content="noindex, nofollow">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <!-- 將百度地圖API引入,設置好自己的key -->
  <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=7a6QKaIilZftIMmKGAFLG7QT1GLfIncg"></script>
</head>
<body>
<div class="main-div">
  <form method="post" action="" name="theForm" enctype="multipart/form-data" onsubmit="return validate()">
    <table cellspacing="1" cellpadding="3" width="100%">
      <tr>
        <td class="label">經(jīng)度</td>
        <td><input type="text" name="lng" id="lng" value=""/>
        </td>
      </tr>
      <tr>
        <td class="label">緯度</td>
        <td><input type="text" name="lat" id="lat" value=""/>
        </td>
      </tr>
      <tr>
        <td class="label">地址</td>
        <td>
          <input type='text' value='' name='sever_add' id='sever_add' readonly>
          <input type='button' value='點擊顯示地圖獲取地址經(jīng)緯度' id='open'>
        </td>
      </tr>
    </table>
  </form>
  <div id='allmap' style='width: 50%; height: 50%; position: absolute; display: none'></div>
</div>
</body>
</html>

2、JS代碼如下

<script type="text/javascript">
  function validate() {
    var sever_add = document.getElementsByName('sever_add')[0].value;
    if (isNull(sever_add)) {
      alert('請選擇地址');
      return false;
    }
    return true;
  }
  //判斷是否是空
  function isNull(a) {
    return (a == '' || typeof(a) == 'undefined' || a == null) ? true : false;
  }
  document.getElementById('open').onclick = function () {
    if (document.getElementById('allmap').style.display == 'none') {
      document.getElementById('allmap').style.display = 'block';
    } else {
      document.getElementById('allmap').style.display = 'none';
    }
  }
  var map = new BMap.Map("allmap");
  var geoc = new BMap.Geocoder();  //地址解析對象
  var markersArray = [];
  var geolocation = new BMap.Geolocation();
  var point = new BMap.Point(116.331398, 39.897445);
  map.centerAndZoom(point, 12); // 中心點
  geolocation.getCurrentPosition(function (r) {
    if (this.getStatus() == BMAP_STATUS_SUCCESS) {
      var mk = new BMap.Marker(r.point);
      map.addOverlay(mk);
      map.panTo(r.point);
      map.enableScrollWheelZoom(true);
    }
    else {
      alert('failed' + this.getStatus());
    }
  }, {enableHighAccuracy: true})
  map.addEventListener("click", showInfo);
  //清除標識
  function clearOverlays() {
    if (markersArray) {
      for (i in markersArray) {
        map.removeOverlay(markersArray[i])
      }
    }
  }
  //地圖上標注
  function addMarker(point) {
    var marker = new BMap.Marker(point);
    markersArray.push(marker);
    clearOverlays();
    map.addOverlay(marker);
  }
  //點擊地圖時間處理
  function showInfo(e) {
    document.getElementById('lng').value = e.point.lng;
    document.getElementById('lat').value = e.point.lat;
    geoc.getLocation(e.point, function (rs) {
      var addComp = rs.addressComponents;
      var address = addComp.province + addComp.city + addComp.district + addComp.street + addComp.streetNumber;
      if (confirm("確定要地址是" + address + "?")) {
        document.getElementById('allmap').style.display = 'none';
        document.getElementById('sever_add').value = address;
      }
    });
    addMarker(e.point);
  }
</script>

將js代碼放入到html中,我們可以得到效果圖如下:

更多關于JavaScript相關內(nèi)容還可查看本站專題:《JavaScript數(shù)學運算用法總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript數(shù)組操作技巧總結》、《JavaScript事件相關操作與技巧大全》、《JavaScript操作DOM技巧總結》及《JavaScript字符與字符串操作技巧總結

希望本文所述對大家JavaScript程序設計有所幫助。

相關文章

  • 詳細分析Javascript中創(chuàng)建對象的四種方式

    詳細分析Javascript中創(chuàng)建對象的四種方式

    這篇文章詳細介紹了Javascript中創(chuàng)建對象的幾種方式與每種方式的優(yōu)缺點,其中包括工廠模式、構造函數(shù)模式、原型模式和組合使用構造函數(shù)模式和原型模式,有需要的小伙伴們一起來學習學習吧。
    2016-08-08
  • 200行HTML+JavaScript實現(xiàn)年會抽獎程序

    200行HTML+JavaScript實現(xiàn)年會抽獎程序

    這篇文章主要為大家詳細介紹了HTML+JavaScript實現(xiàn)年會抽獎程序的200行代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • 基于JS實現(xiàn)省市聯(lián)動效果代碼分享

    基于JS實現(xiàn)省市聯(lián)動效果代碼分享

    這篇文章主要介紹了基于JS實現(xiàn)省市聯(lián)動效果代碼的相關資料,非常實用,在日常項目開發(fā)過程中經(jīng)常遇到此需求,下面小編給大家分享實現(xiàn)代碼,需要的朋友可以參考下
    2016-06-06
  • 微信小程序用戶拒絕授權的處理方法詳解

    微信小程序用戶拒絕授權的處理方法詳解

    這篇文章主要介紹了微信小程序用戶拒絕授權的處理方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • js密碼強度實時檢測代碼

    js密碼強度實時檢測代碼

    這篇文章主要為大家詳細介紹了js密碼強度實時檢測代碼,密碼強度的判斷, 在注冊網(wǎng)站用戶的時候, 是一個必須要做的事情,如何實現(xiàn)js密碼強度檢測,感興趣的小伙伴們可以參考一下
    2016-03-03
  • js實現(xiàn)點擊鏈接后延遲3秒再跳轉的方法

    js實現(xiàn)點擊鏈接后延遲3秒再跳轉的方法

    這篇文章主要介紹了js實現(xiàn)點擊鏈接后延遲3秒再跳轉的方法,通過javascript的setTimeout方法實現(xiàn)延遲跳轉的功能,需要的朋友可以參考下
    2015-06-06
  • JS ES6中setTimeout函數(shù)的執(zhí)行上下文示例

    JS ES6中setTimeout函數(shù)的執(zhí)行上下文示例

    這篇文章主要給大家介紹了關于JS ES6中setTimeout函數(shù)的執(zhí)行上下文的相關資料,文中給出了詳細的介紹和示例代碼供大家參考學習,需要的朋友們下面來一起看看吧。
    2017-04-04
  • js實現(xiàn)文字跑馬燈效果

    js實現(xiàn)文字跑馬燈效果

    本文主要介紹了js實現(xiàn)文字超過顯示寬度每間隔1s自動向左滾動顯示的跑馬燈效果,具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • Javascript 模擬mvc實現(xiàn)點餐程序案例詳解

    Javascript 模擬mvc實現(xiàn)點餐程序案例詳解

    這篇文章主要介紹了Javascript 模擬mvc實現(xiàn)點餐程序案例詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • 用循環(huán)或if語句從json中取數(shù)據(jù)示例

    用循環(huán)或if語句從json中取數(shù)據(jù)示例

    倘若想將id和pid數(shù)據(jù)依次取出,就只能用循環(huán),若想有選擇性的輸出時,需要添加if條件
    2014-08-08

最新評論

建瓯市| 张家港市| 密云县| 寿光市| 大竹县| 海门市| 辽阳县| 土默特右旗| 武陟县| 炉霍县| 宝兴县| 辽阳市| 柞水县| 郁南县| 平邑县| 敦化市| 汽车| 嘉定区| 梨树县| 井陉县| 滦平县| 宣威市| 荆州市| 普兰县| 蒙城县| 马山县| 六盘水市| 桂东县| 深水埗区| 南部县| 乾安县| 邯郸市| 乐清市| 茂名市| 五台县| 漳平市| 固始县| 永福县| 桐梓县| 富蕴县| 靖远县|