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

sogou地圖API用法實例教程

 更新時間:2014年09月11日 11:53:55   投稿:shichen2014  
這篇文章主要介紹了C# sogou地圖API用法,包括了各種常用屬性的用法實例,需要的朋友可以參考下

本文實例講述了sogou地圖API應(yīng)用,是非常實用的技巧。分享給大家供大家參考。具體實現(xiàn)方法如下:

地圖的初始化

1、添加引用地圖的API文件:

<script src="http://xiazai.jb51.net/201409/other/api_v2.5.1.js" type="text/javascript"></script>

2、網(wǎng)站初始化加載事件:

window.onload = function () { 
var map = new sogou.maps.Map(document.getElementById("map_canvas"), {});
} 

創(chuàng)建一個id為map_canvas的div,自定義div樣式,網(wǎng)站運行時地圖自動加載;

具體代碼如下

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
 <title></title>
 <style type="text/css">
html {height: auto;}
body {height: auto;margin: 0;padding: 0;}
#map_canvas {width:1000px;height: 500px;position: absolute;}
@media print {#map_canvas {height: 950px;}}
</style>

<script src="http://xiazai.jb51.net/201409/other/api_v2.5.1.js" type="text/javascript"></script>
<script>
window.onload = function () {
 var map = new sogou.maps.Map(document.getElementById("map_canvas"), {});

}
</script>
</head>
<body>
 <form id="form1" runat="server">
 <div id="map_canvas"></div>
 </form>
</body>
</html>

指定顯示莫城市地圖

關(guān)鍵代碼如下:

window.onload = function () { 
var myOptions = { zoom: 10,center: new sogou.maps.Point(12956000, 4824875) };//城市坐標,本坐標為北京坐標
var map = new sogou.maps.Map(document.getElementById("map_canvas"), myOptions); 
}

地圖屬性了解

列舉一下常用的一些屬性比如:地圖的移動、地圖類型轉(zhuǎn)換、跳轉(zhuǎn)到指定城市

具體代碼如下

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
 <title></title>
 <style type="text/css">
html {height: auto;}
body {height: auto;margin: 0;padding: 0;}
#map_canvas {width:1000px;height: 500px;position: absolute;}
@media print {#map_canvas {height: 950px;}}
</style>

<script src="http://xiazai.jb51.net/201409/other/api_v2.5.1.js" type="text/javascript"></script>
<script>
var map;//創(chuàng)建全局變量
window.onload = function () { 
 var myOptions = { zoom: 10, center: new sogou.maps.Point(12956000, 4824875) };//指定城市
 map = new sogou.maps.Map(document.getElementById("map_canvas"), myOptions);//創(chuàng)建地圖 

}
//setMapTypeId方法示例
function setMapTypeId(num) { 
 //設(shè)置地圖類型,如:
 //sogou.maps.MapTypeId.ROADMAP 普通地圖
 //sogou.maps.MapTypeId.SATELLITE 衛(wèi)星地圖
 //sogou.maps.MapTypeId.HYBRID 衛(wèi)星和路網(wǎng)混合地圖
 //map.setMapTypeId(sogou.maps.MapTypeId.HYBRID)
 switch (num) {
 case 1: map.setMapTypeId(sogou.maps.MapTypeId.ROADMAP); break; //普通地圖
 case 2: map.setMapTypeId(sogou.maps.MapTypeId.SATELLITE); break; //衛(wèi)星地圖
 case 3: map.setMapTypeId(sogou.maps.MapTypeId.HYBRID); break; //衛(wèi)星和路網(wǎng)混合地圖
 }
}
//panBy方法示例地圖手動移動
function panBy(a, b) {
 map.panBy(a, b)
}
//setOptions方法示例顯示指定地區(qū)
function setOptions() {
 //同時設(shè)置地圖中心、級別、類型
 map.setOptions({ center: new sogou.maps.Point(13522000, 3641093), zoom: 12, mapTypeId: sogou.maps.MapTypeId.ROADMAP })
}
//setCenter方法示例 顯示指定的地區(qū) a、b為地圖坐標,C為地圖級別
function setCenter(a, b, c) {
 map.setCenter(new sogou.maps.Point(a, b), c)
}
//fitBounds方法示例 跳轉(zhuǎn)到指定的范圍內(nèi)
function fitBounds() {
 //設(shè)置一個故宮附近的范圍
 var bounds = new sogou.maps.Bounds(12955101, 4824738, 12958355, 4827449);
 //將地圖設(shè)置為可全部顯示這個范圍
 //注:不是設(shè)置bounds為這個值,而是調(diào)整到合適的位置
 map.fitBounds(bounds)
}
</script>
</head>
<body>
 <form id="form1" runat="server">
 <input value="普通地圖" onclick="setMapTypeId(1)" type="button"/>
 <input value="衛(wèi)星地圖" onclick="setMapTypeId(2)" type="button"/>
 <input value="衛(wèi)星和路網(wǎng)混合地圖" onclick="setMapTypeId(3)" type="button"/>
 <input value="向左移動" onclick="panBy(200,0)" type="button"/>
 <input value="向右移動" onclick="panBy(-200,0)" type="button"/>
 <input value="向上移動" onclick="panBy(0,200)" type="button"/>
 <input value="向下移動" onclick="panBy(0,-200)" type="button"/>
 <input value="向左上移動" onclick="panBy(200,200)" type="button"/> 
 <input value="上海" onclick="setOptions()" type="button"/>
 <input value="天津" onclick="setCenter(13046000,4714250,10)" type="button"/>
  <input value="故宮" onclick="fitBounds()" type="button"/>
 <div id="map_canvas" ></div>
 </form>
</body>
</html>

地圖描點屬性

地圖上很重要的屬性,給地圖添加描點,是常用的方法屬性,

搜狗API提供兩種描點填寫形式默認描點和動態(tài)添加描點

默認描點添加:

var location = new sogou.maps.Point(12956000, 4824875); //指定描點位置
var map = new sogou.maps.Map(document.getElementById("map_canvas"), {});//初始化地圖
var marker = new sogou.maps.Marker({
 position: location,//描點坐標
 title: "描點",//描點名稱
 label: { visible: true, align: "BOTTOM" },//描點顯示形式
 map: map, 
 });//添加描點到地圖

動態(tài)描點添加

window.onload = function () { 
//初始化地圖
 map = new sogou.maps.Map(document.getElementById("map_canvas"), {});
//為地圖添加點擊事件
sogou.maps.event.addListener(map, 'click', function (event) {
 var marker1 = new sogou.maps.Marker({
 position: event.point, 
 map: map
 });
 }); 
}

根據(jù)兩描點測距

//獲取類的唯一示例
function getInstance(a) {
 a.hasOwnProperty("_instance") || (a._instance = new a);
 return a._instance
}
//兩點相連
function Lines(myLatlng, myPoint) { 
 var convertor = getInstance(sogou.maps.Convertor);
 var distance = convertor.distance(myLatlng, myPoint);
 //兩點鏈接
 var line = new sogou.maps.Polyline({
 path: [myLatlng, myPoint],
 strokeColor: "#FF0000",
 strokeOpacity: 1.0,
 strokeWeight: 1,
 title: parseInt(distance) + "米",
 map: map
 }); 
}

根據(jù)上述屬性做了一個小的模塊,地圖上動態(tài)測距代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
 <title></title>
 <style type="text/css">
html {height: auto;}
body {height: auto;margin: 0;padding: 0;}
#map_canvas {width:1000px;height: 500px;position: absolute;}
@media print {#map_canvas {height: 950px;}}
</style>
 <script src="http://xiazai.jb51.net/201409/other/api_v2.5.1.js" type="text/javascript"></script>
 <script>
  var map;var num;var Listener;
  //獲取類的唯一示例
  function getInstance(a) {
   a.hasOwnProperty("_instance") || (a._instance = new a);
   return a._instance
  }
  window.onload = function () { 
  //初始化地圖
   map = new sogou.maps.Map(document.getElementById("map_canvas"), {}); 
  }
  function AddCj() {
   var mypointh; var myPoint;
   num = 0;
   //為地圖添加點擊事件、點擊后顯示當前坐標并添加點擊描點
   Listener = sogou.maps.event.addListener(map, 'click', function (event) {
    if (num == 0) {
     mypointh = myPoint = event.point; //獲取點擊位置的坐標 
    }
    else {
     myPoint = mypointh;
     mypointh = event.point; //獲取點擊位置的坐標 
    }
    Lines(mypointh, myPoint);
    num++;
   });
  }
  function DelCj() {
   sogou.maps.event.removeListener(Listener)
  }

  //兩點相連
  function Lines(myLatlng, myPoint) { 
   var convertor = getInstance(sogou.maps.Convertor);
   var distance = convertor.distance(myLatlng, myPoint);
   //兩點鏈接
   var line = new sogou.maps.Polyline({
    path: [myLatlng, myPoint],
    strokeColor: "#FF0000",
    strokeOpacity: 1.0,
    strokeWeight: 1,
    title: parseInt(distance) + "米",
    map: map
   });
   placeMarker(myLatlng, parseInt(distance));
  }
  //動態(tài)添加描點,根據(jù)指定的坐標創(chuàng)建描點
  function placeMarker(location,jl) {
   var clickedLocation = location;
   var marker1 = new sogou.maps.Marker({
    position: location,
    title: jl+"米",
    label:{visible:true,align:"BOTTOM"},
    map: map
   });
  }
  function Mapclear() {
   num = 0;
   map.clearAll();
  }
 </script>
</head>
<body>
 <form id="form1" runat="server">
 <input type="button" value="測距" onclick="AddCj()" />
 <input type="button" value="取消測距" onclick="DelCj()" />
 <input type="button" value="清空" onclick="Mapclear()" /> 
 <div id="map_canvas" ></div>
 </form>
</body>
</html>

希望本文所述對大家的sogou地圖開發(fā)有所幫助

相關(guān)文章

  • 純JavaScript實現(xiàn)猜數(shù)字游戲

    純JavaScript實現(xiàn)猜數(shù)字游戲

    這篇文章主要為大家詳細介紹了純JavaScript實現(xiàn)猜數(shù)字游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • 詳解自動生成博客目錄案例

    詳解自動生成博客目錄案例

    本文主要對自動生成博客目錄的具體實現(xiàn)方法進行介紹,需要的朋友可以看看
    2016-12-12
  • JavaScript中常用的3種彈出提示框(alert、confirm、prompt)

    JavaScript中常用的3種彈出提示框(alert、confirm、prompt)

    這篇文章主要給大家介紹了關(guān)于JavaScript中常用的3種彈出提示框(alert、confirm、prompt)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • JavaScript:Div層拖動效果實例代碼

    JavaScript:Div層拖動效果實例代碼

    這篇文章介紹了JavaScript:Div層拖動效果實例代碼,有需要的朋友可以參考一下
    2013-08-08
  • js原生瀑布流插件制作

    js原生瀑布流插件制作

    這篇文章主要為大家詳細介紹了js原生瀑布流插件制作,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • 微信小程序自定義組件之可清除的input組件

    微信小程序自定義組件之可清除的input組件

    最近正在做的一個小程序項目中需要用到一個可清除的輸入框控件,為了方便小編直接使用了可清除的input自定義組件,下面腳本之家小編給大家?guī)砹宋⑿判〕绦蜃远x組件之可清除的input組件,感興趣的朋友一起看看吧
    2018-07-07
  • JavaScript中的break語句和continue語句案例詳解

    JavaScript中的break語句和continue語句案例詳解

    本文詳細介紹了JavaScript中的break和continue語句的用法及其應(yīng)用場景,break用于提前退出循環(huán),而continue用于跳過當前迭代,還介紹了標簽化的break和continue,以及如何在實際編程中合理使用這些語句以提高代碼的效率和可讀性,感興趣的朋友一起看看吧
    2025-03-03
  • Bootstrap網(wǎng)格系統(tǒng)詳解

    Bootstrap網(wǎng)格系統(tǒng)詳解

    bootstrap框架中的網(wǎng)格系統(tǒng)就是將容器平分成12份,在使用的時候可以根據(jù)實際情況重新編譯LESS/SASS源碼來修改12這個數(shù)值。接下來通過本文給大家介紹Bootstrap網(wǎng)格系統(tǒng),感興趣的朋友一起學習
    2016-04-04
  • 深入探討JavaScript中Class的語法與使用

    深入探討JavaScript中Class的語法與使用

    這篇文章將帶大家深入探討 class 在 JavaScript 中的作用、語法和使用方法,并與 ES5 構(gòu)造函數(shù)進行對比,希望可以幫助大家更好地理解和應(yīng)用類的概念
    2023-06-06
  • javascript demo 基本技巧

    javascript demo 基本技巧

    js下的一些小技巧,需要的朋友可以下。
    2009-12-12

最新評論

梅州市| 客服| 台湾省| 临湘市| 玉门市| 枞阳县| 余干县| 青浦区| 高要市| 蓝山县| 新津县| 进贤县| 富裕县| 延安市| 济南市| 安远县| 股票| 屏东县| 昌都县| 邛崃市| 东辽县| 太白县| 繁昌县| 武川县| 田林县| 洛浦县| 磴口县| 遂溪县| 桃园市| 台中市| 长宁区| 德州市| 五莲县| 光泽县| 西华县| 娄底市| 威海市| 寻乌县| 金门县| 鹤峰县| 梁山县|