第1行: | 第1行: | ||
{{jspopularGL-sidebar}} | {{jspopularGL-sidebar}} | ||
− | <div class="h1-title">Hello World</div><div id="update- | + | <div class="h1-title">Hello World</div><div id="update-time1">更新时间:2020年08月07日</div><div class="bluetitle"><div class="serve-explain-text"><div class="service-page-anchor"><span>百度地图的“Hello, World”</span></div></div></div><div class="serve-explain-text"> |
− | <div class="bluetitle"><div class=" | + | |
开始学习百度地图API最简单的方式是看一个简单的示例。该示例帮助您快速了解百度地图API的基本使用,快速创建一张“我的地图”。 | 开始学习百度地图API最简单的方式是看一个简单的示例。该示例帮助您快速了解百度地图API的基本使用,快速创建一张“我的地图”。 | ||
− | 如下代码可以实现一个简单完整的全屏展示的地图Demo:</div><div class="prehtml"><!--代码区域--><pre class="prettyprint jsapidemo"><!DOCTYPE html> | + | 如下代码可以实现一个简单完整的全屏展示的地图Demo:</div><div class="prehtml" style="width: 700px;"><!--代码区域--><pre class="prettyprint jsapidemo"><!DOCTYPE html> |
<html> | <html> | ||
<head> | <head> | ||
第31行: | 第30行: | ||
</html> | </html> | ||
</pre> | </pre> | ||
− | <!--DEMO区域--><div class="addsomedemo"><div dir="https://lbs.baidu.com/jsdemo/demo/webgl0_0.htm"></div><div class="top_right">[http://lbs.baidu.com/jsdemo.htm#webgl0_0 DEMO详情]</div></div></div> | + | <!--DEMO区域--><div class="addsomedemo" style="height: 290px;"><div dir="https://lbs.baidu.com/jsdemo/demo/webgl0_0.htm"></div><div class="top_right">[http://lbs.baidu.com/jsdemo.htm#webgl0_0 DEMO详情]</div></div></div> |
下面我们分步向您介绍如何快速开始地图开发: | 下面我们分步向您介绍如何快速开始地图开发: | ||
− | <div class="devguide"><div class="leftborderbg" style="height:5000px;"></div><div class="devguideorder"><span>1</span>申请百度账号和ak</div><div class="devguidecenter">[http://lbsyun.baidu.com/apiconsole/key 点我申请]</div><div class="devguideorder"><span>2</span>准备页面</div><div class="devguidecenter">根据HTML标准,每一份HTML文档都应该声明正确的文档类型,我们建议您使用最新的符合HTML5规范的文档声明:<pre class="prettyprint codestyle"><!DOCTYPE html> | + | <div class="devguide"><div class="leftborderbg" style="height:5000px;"></div><div class="devguideorder"><span>1</span>申请百度账号和ak</div><div class="devguidecenter">[http://lbsyun.baidu.com/apiconsole/key 点我申请]</div><div class="devguideorder"><span>2</span>准备页面</div><div class="devguidecenter"> |
+ | 根据HTML标准,每一份HTML文档都应该声明正确的文档类型,我们建议您使用最新的符合HTML5规范的文档声明: | ||
+ | <pre class="prettyprint codestyle"><!DOCTYPE html> | ||
</pre> | </pre> | ||
您也可以根据需要选择其他类型的文档声明,这样浏览器会以标准的方式对页面进行渲染,保证页面最大的兼容性。我们不建议您使用quirks模式进行开发。 | 您也可以根据需要选择其他类型的文档声明,这样浏览器会以标准的方式对页面进行渲染,保证页面最大的兼容性。我们不建议您使用quirks模式进行开发。 | ||
− | </div><div class="devguideorder"><span>3</span>适应移动端页面展示</div><div class="devguidecenter">下面我们添加一个meta标签,以便使您的页面更好的在移动平台上展示。<pre class="prettyprint codestyle"><meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> | + | </div><div class="devguideorder"><span>3</span>适应移动端页面展示</div><div class="devguidecenter"> |
+ | 下面我们添加一个meta标签,以便使您的页面更好的在移动平台上展示。 | ||
+ | <pre class="prettyprint codestyle"><meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> | ||
</pre> | </pre> | ||
− | </div><div class="devguideorder"><span>4</span>设置容器样式</div><div class="devguidecenter">设置容器样式大小,使地图充满整个浏览器窗口:<pre class="prettyprint codestyle"><style type="text/css"> | + | </div><div class="devguideorder"><span>4</span>设置容器样式</div><div class="devguidecenter"> |
+ | 设置容器样式大小,使地图充满整个浏览器窗口: | ||
+ | <pre class="prettyprint codestyle"><style type="text/css"> | ||
html{height:100%} | html{height:100%} | ||
body{height:100%;margin:0px;padding:0px} | body{height:100%;margin:0px;padding:0px} | ||
第46行: | 第51行: | ||
</pre> | </pre> | ||
</div><div class="devguideorder"><span>5</span>引用百度地图API文件</div><div class="devguidecenter"><pre class="prettyprint codestyle"><script type="text/javascript" src="https://api.map.baidu.com/api?v=1.0&&type=webgl&ak=您的密钥"> | </div><div class="devguideorder"><span>5</span>引用百度地图API文件</div><div class="devguidecenter"><pre class="prettyprint codestyle"><script type="text/javascript" src="https://api.map.baidu.com/api?v=1.0&&type=webgl&ak=您的密钥"> | ||
+ | </script></pre> | ||
+ | </div><div class="devguideorder"><span>6</span>创建地图容器元素</div><div class="devguidecenter"> | ||
+ | 地图需要一个HTML元素作为容器,这样才能展现到页面上。这里我们创建了一个div元素。 | ||
+ | <pre class="prettyprint codestyle"><div id="container"></div> | ||
</pre> | </pre> | ||
− | + | </div><div class="devguideorder"><span>7</span>创建地图实例</div><div class="devguidecenter"> | |
− | + | 位于BMapGL命名空间下的Map类表示地图,通过new操作符可以创建一个地图实例。其参数可以是元素id也可以是元素对象。 | |
− | </div><div class="devguideorder"><span>7</span>创建地图实例</div><div class="devguidecenter">位于BMapGL命名空间下的Map类表示地图,通过new操作符可以创建一个地图实例。其参数可以是元素id也可以是元素对象。<pre class="prettyprint codestyle">var map = new BMapGL.Map("container");</pre> | + | <pre class="prettyprint codestyle">var map = new BMapGL.Map("container");</pre> |
<font color="red">注意:</font> | <font color="red">注意:</font> | ||
第56行: | 第65行: | ||
2、命名空间 API GL版使用BMapGL作为命名空间,所有类均在该命名空间之下,比如:BMapGL.Map、BMapGL.Control、BMapGL.Overlay; | 2、命名空间 API GL版使用BMapGL作为命名空间,所有类均在该命名空间之下,比如:BMapGL.Map、BMapGL.Control、BMapGL.Overlay; | ||
− | </div><div class="devguideorder"><span>8</span>设置中心点坐标</div><div class="devguidecenter">这里我们使用BMapGL命名空间下的Point类来创建一个坐标点。Point类描述了一个地理坐标点,其中116.404表示经度,39.915表示纬度。(为天安门坐标)<pre class="prettyprint codestyle">var point = new BMapGL.Point(116.404, 39.915); | + | </div><div class="devguideorder"><span>8</span>设置中心点坐标</div><div class="devguidecenter"> |
+ | 这里我们使用BMapGL命名空间下的Point类来创建一个坐标点。Point类描述了一个地理坐标点,其中116.404表示经度,39.915表示纬度。(为天安门坐标) | ||
+ | <pre class="prettyprint codestyle">var point = new BMapGL.Point(116.404, 39.915); | ||
</pre> | </pre> | ||
第64行: | 第75行: | ||
− | </div><div class="devguideorder"><span>9</span>地图初始化,同时设置地图展示级别</div><div class="devguidecenter">在创建地图实例后,我们需要对其进行初始化,BMapGL.Map.centerAndZoom()方法要求设置中心点坐标和地图级别。 地图必须经过初始化才可以执行其他操作<pre class="prettyprint codestyle">map.centerAndZoom(point, 15); | + | </div><div class="devguideorder"><span>9</span>地图初始化,同时设置地图展示级别</div><div class="devguidecenter"> |
+ | 在创建地图实例后,我们需要对其进行初始化,BMapGL.Map.centerAndZoom()方法要求设置中心点坐标和地图级别。 地图必须经过初始化才可以执行其他操作 | ||
+ | <pre class="prettyprint codestyle">map.centerAndZoom(point, 15); | ||
</pre> | </pre> | ||
− | </div></div><div class="serve-explain-text">至此,我们就快速创建了一张以天安门为中心的地图。</div><div class="bluetitle"><div class=" | + | </div></div><div class="serve-explain-text">至此,我们就快速创建了一张以天安门为中心的地图。</div><div class="bluetitle"><div class="serve-explain-text"><div class="service-page-anchor"><span>地图配置与操作</span></div></div></div><div class="serve-explain-text"> |
API中的地图对象的外观与行为与百度地图网站上交互的地图非常相似。它支持鼠标拖拽、滚轮缩放、双击放大等交互功能。您也可以修改配置来改变这些功能。 | API中的地图对象的外观与行为与百度地图网站上交互的地图非常相似。它支持鼠标拖拽、滚轮缩放、双击放大等交互功能。您也可以修改配置来改变这些功能。 | ||
2022年8月19日 (五) 13:07的版本
开始学习百度地图API最简单的方式是看一个简单的示例。该示例帮助您快速了解百度地图API的基本使用,快速创建一张“我的地图”。
如下代码可以实现一个简单完整的全屏展示的地图Demo:<!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Hello, World</title> <style type="text/css"> html{height:100%} body{height:100%;margin:0px;padding:0px} #container{height:100%} </style> <script type="text/javascript" src="https://api.map.baidu.com/api?v=1.0&type=webgl&ak=您的密钥"> </script> </head> <body> <div id="container"></div> <script type="text/javascript"> var map = new BMapGL.Map("container"); // 创建地图实例 var point = new BMapGL.Point(116.404, 39.915); // 创建点坐标 map.centerAndZoom(point, 15); // 初始化地图,设置中心点坐标和地图级别 </script> </body> </html>
下面我们分步向您介绍如何快速开始地图开发:
根据HTML标准,每一份HTML文档都应该声明正确的文档类型,我们建议您使用最新的符合HTML5规范的文档声明:
<!DOCTYPE html>
您也可以根据需要选择其他类型的文档声明,这样浏览器会以标准的方式对页面进行渲染,保证页面最大的兼容性。我们不建议您使用quirks模式进行开发。
下面我们添加一个meta标签,以便使您的页面更好的在移动平台上展示。
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
设置容器样式大小,使地图充满整个浏览器窗口:
<style type="text/css"> html{height:100%} body{height:100%;margin:0px;padding:0px} #container{height:100%} </style>
<script type="text/javascript" src="https://api.map.baidu.com/api?v=1.0&&type=webgl&ak=您的密钥"> </script>
地图需要一个HTML元素作为容器,这样才能展现到页面上。这里我们创建了一个div元素。
<div id="container"></div>
位于BMapGL命名空间下的Map类表示地图,通过new操作符可以创建一个地图实例。其参数可以是元素id也可以是元素对象。
var map = new BMapGL.Map("container");
注意:
1、在调用此构造函数时应确保容器元素已经添加到地图上;
2、命名空间 API GL版使用BMapGL作为命名空间,所有类均在该命名空间之下,比如:BMapGL.Map、BMapGL.Control、BMapGL.Overlay;
这里我们使用BMapGL命名空间下的Point类来创建一个坐标点。Point类描述了一个地理坐标点,其中116.404表示经度,39.915表示纬度。(为天安门坐标)
var point = new BMapGL.Point(116.404, 39.915);
注意:
在使用百度地图JavaScript API服务时,需使用百度BD09坐标,如使用其他坐标( WGS84、GCJ02)进行展示,需先将其他坐标转换为BD09,详细说明请参考坐标转换说明,请勿使用非官方的转换方法。
在创建地图实例后,我们需要对其进行初始化,BMapGL.Map.centerAndZoom()方法要求设置中心点坐标和地图级别。 地图必须经过初始化才可以执行其他操作
map.centerAndZoom(point, 15);
API中的地图对象的外观与行为与百度地图网站上交互的地图非常相似。它支持鼠标拖拽、滚轮缩放、双击放大等交互功能。您也可以修改配置来改变这些功能。
比如,默认情况下地图不支持鼠标滚轮缩放操作,因为这样可能会影响整个页面的用户体验,但是如果您希望在地图中使用鼠标滚轮控制缩放,则可以调用map.enableScrollWheelZoom方法来开启。配置选项可以在Map类参考中找到。
此外,您还可以通过编程的方式与地图交互。Map类提供了若干修改地图状态的方法。例如:setTilt()、setCenter()、panTo()、zoomTo()等等。详细可以参考示例DEMO。