代碼
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
body, html, #allmap {
width: 100%;
height: 100%;
overflow: hidden;
margin: 0;
font-family: "微軟雅黑";
}
ul li {
list-style: none;
}
.btn-wrap {
z-index: 999;
position: fixed;
bottom: 3rem;
margin-left: 60rem;
padding: 1rem 1rem;
border-radius: .25rem;
background-color: #fff;
box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5);
}
.btn {
width: 75px;
height: 30px;
float: left;
background-color: #fff;
color: rgba(27, 142, 236, 1);
font-size: 14px;
border: 1px solid rgba(27, 142, 236, 1);
border-radius: 5px;
margin: 0 5px;
text-align: center;
line-height: 30px;
}
.btn:hover {
background-color: rgba(27, 142, 236, 0.8);
color: #fff;
}
</style>
<script type="text/javascript" src="https://api.map.baidu.com/api?v=3.0&ak=你的ak"></script>
<title>顯示坐標(biāo)</title>
</head>
<body>
<div id="allmap"></div>
<ul class="btn-wrap" style="z-index: 99;">
<li class="light btn">繪圖</li>
<li class="night btn">清除</li>
</ul>
</body>
</html>
<script type="text/javascript">
// 百度地圖API功能
var map = new BMap.Map("allmap"); // 創(chuàng)建Map實(shí)例
map.centerAndZoom("北京", 15); // 初始化地圖,用城市名設(shè)置地圖中心點(diǎn)
var opts = {
width: 20, // 信息窗口寬度
height: 5, // 信息窗口高度
}
map.enableScrollWheelZoom();
map.addEventListener("click", function (e) {
//alert(e.point.lng + ", " + e.point.lat);
var infoWindow = new BMap.InfoWindow(e.point.lat.toFixed(3) + ", " + e.point.lng.toFixed(3), opts); // 創(chuàng)建信息窗口對象
map.openInfoWindow(infoWindow, e.point);
});
</script>
注:需要將 你的ak 替換,從百度地圖官網(wǎng)注冊申請。
腳本中使用BMap創(chuàng)建Map實(shí)例,centerAndZoom()初始化地圖設(shè)置中心點(diǎn)為北京,地圖等級15。enableScrollWheelZoom()鼠標(biāo)滾輪可縮放窗口。addEventListener監(jiān)聽鼠標(biāo)點(diǎn)擊事件,發(fā)生后,傳遞事件e至function(e),執(zhí)行openInfoWindow,在鼠標(biāo)點(diǎn)擊坐標(biāo)e.point顯示infoWindow,內(nèi)容為此處的緯度,經(jīng)度。
結(jié)構(gòu)
<html>
<head>
頭部
</head>
<body>
身體
</body>
</html>
<script>
腳本
</script>
代碼可分為html腳本與javascript腳本兩部分,每一部分使用標(biāo)簽來描述標(biāo)簽內(nèi)部的內(nèi)容<標(biāo)簽></標(biāo)簽>。html頭部使用了CSS (Cascading Style Sheets,層疊樣式表),在<style> </style>中使用CSS文本描述了按鈕的格式。
參考教程:
菜鳥教程HTML
菜鳥教程JavaScript
菜鳥教程CSS
head
先看頭部
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
body, html, #allmap {
width: 100%;
height: 100%;
overflow: hidden;
margin: 0;
font-family: "微軟雅黑";
}
ul li {
list-style: none;
}
.btn-wrap {
z-index: 999;
position: fixed;
bottom: 3rem;
margin-left: 60rem;
padding: 1rem 1rem;
border-radius: .25rem;
background-color: #fff;
box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5);
}
.btn {
width: 75px;
height: 30px;
float: left;
background-color: #fff;
color: rgba(27, 142, 236, 1);
font-size: 14px;
border: 1px solid rgba(27, 142, 236, 1);
border-radius: 5px;
margin: 0 5px;
text-align: center;
line-height: 30px;
}
.btn:hover {
background-color: rgba(27, 142, 236, 0.8);
color: #fff;
}
</style>
<script type="text/javascript" src="https://api.map.baidu.com/api?v=3.0&ak=你的ak"></script>
<title>顯示坐標(biāo)</title>
前兩行<meta>標(biāo)簽,提供了HTML文檔的元數(shù)據(jù)。content屬性定義與http-qquiv或name屬性相關(guān)的元信息。http-equiv和name屬性將content關(guān)聯(lián)道http頭部或者名稱。
下一行<style>標(biāo)簽,定義文檔的樣式信息。type屬性確定樣式表的類型。
CSS語法如上,通過選擇器確定對哪個(gè)或哪些標(biāo)簽進(jìn)行格式定義,設(shè)置其屬性為某值。屬性:值; 稱為聲明,聲明間用;分開,最外側(cè)使用大括號括起來。
CSS選擇器可以為標(biāo)簽,也可通過標(biāo)簽的id和class進(jìn)行選擇器的確定。
body,html
ul li
選擇html元素的標(biāo)簽body,html
為元素選擇器,ul li
為后代選擇器
#allmap
選擇html元素的id
為id選擇器
.btn-wrap
.btn
.btn:hover
選擇html的class
為類型選擇器
菜鳥教程:CSS選擇器
body
<body>
<div id="allmap"></div>
<ul class="btn-wrap" style="z-index: 99;">
<li class="light btn">繪圖</li>
<li class="night btn">清除</li>
</ul>
</body>
html 標(biāo)簽
div標(biāo)簽:節(jié),標(biāo)簽定義 HTML 文檔中的一個(gè)分隔區(qū)塊或者一個(gè)區(qū)域部分。 id為allmap,在head中通過CSS id選擇器確定了其樣式,在腳本中通過id進(jìn)行功能實(shí)現(xiàn)。
html div
ul 標(biāo)簽定義無序列表
li 標(biāo)簽定義列表項(xiàng)目
繪圖與清除按鈕沒有設(shè)定功能,只在CSS通過類型選擇器btn設(shè)置了樣式。light與night類型沒有設(shè)置樣式。標(biāo)簽定義的不同類型可以用空格分開。文章來源:http://www.zghlxwxcb.cn/news/detail-725274.html
script
<script type="text/javascript">
// 百度地圖API功能
var map = new BMap.Map("allmap"); // 創(chuàng)建Map實(shí)例
map.centerAndZoom("北京", 15); // 初始化地圖,用城市名設(shè)置地圖中心點(diǎn)
var opts = {
width: 20, // 信息窗口寬度
height: 5, // 信息窗口高度
}
map.enableScrollWheelZoom();
map.addEventListener("click", function (e) {
//alert(e.point.lng + ", " + e.point.lat);
var infoWindow = new BMap.InfoWindow(e.point.lat.toFixed(3) + ", " + e.point.lng.toFixed(3), opts); // 創(chuàng)建信息窗口對象
map.openInfoWindow(infoWindow, e.point);
});
</script>
調(diào)試
打開網(wǎng)頁按F12打開調(diào)試器。打開源代碼,打開此html。在function(e)函數(shù),74行左側(cè)左鍵單擊可設(shè)置斷點(diǎn),在網(wǎng)頁點(diǎn)擊可查看事件e具體的結(jié)構(gòu)。文章來源地址http://www.zghlxwxcb.cn/news/detail-725274.html
到了這里,關(guān)于從零開始學(xué)習(xí)調(diào)用百度地圖網(wǎng)頁API:二、初始化地圖,鼠標(biāo)交互創(chuàng)建信息窗口的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!