jVectorMap
JVectorMap 是一個優秀的、兼容性強的 jQuery 地圖插件。
它可以工作在包括 IE6 在內的各款瀏覽器中,矢量圖輸出,除官方提供各國地圖數據外,用戶可以使用數據轉換程序定制地圖數據。例如街道地圖、小區地圖等等。
JVectorMap 官方網站提供了很多相關文檔和使用示例,感興趣的小伙伴可以自己研究一下。
今天教大家通過 jVectorMap 制作旅行足跡地圖,最終的效果可以查看下面的 Demo 演示(中國),並教大家如何將制作好的足跡地圖嵌入到我們自己的博客中。
Demo : http://www.wujiayi.vip/footprint/
目錄結構
-
紅色框中的文件是必須要引入的內容。
-
綠色框中的文件是展示的地圖,可自行到官網下載需要的地圖 : http://jvectormap.com/maps/world/world/,拷貝到 js 目錄。
-
index.html 中需要添加足跡位置和相關樣式。
開始
index.html
分為三部分介紹:
-
如何更換不同國家地圖。
-
如何修改地圖顏色等相關樣式。
-
如何添加足跡位置。
第一部分:如何更換不同國家地圖。
<html>
<head>
<!--引入jQuery框架-->
<script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
<!--引入jVectorMap庫-->
<script type="text/javascript" src="js/jquery-jvectormap-1.2.2.min.js"></script>
<!--引入樣式表-->
<link href="js/jquery-jvectormap-1.2.2.css" rel="stylesheet" media="screen">
<!--引入中國地圖數據庫-->
<script type="text/javascript" src="js/jquery-jvectormap-cn-merc-en.js"></script>
<!--引入美國地圖數據庫-->
<!--script type="text/javascript" src="js/jquery-jvectormap-us-aea.js"></script-->
<!--引入世界地圖數據庫-->
<!--script type="text/javascript" src="js/jquery-jvectormap-world-mill.js"></script-->
</head>
<body>
提前下載需要的國家地圖,拷貝到 js 目錄下。
在 <head>
標簽里引入地圖數據: <script type="text/javascript" src="js/地圖文件名"></script>
注意 :同時只能有一個地圖庫,注意不要引入多個地圖數據。可以選擇注釋掉其他的,方便更改。
第二部分:如何修改地圖顏色等相關樣式。
<!--background-color: 地圖背景顏色-->
<div id="map" style="background-color:#353535"> </div>
<script>
$('#map').vectorMap({
// 此處更改地圖
map: 'cn_merc_en', // 中國地圖
//map: 'us-aea', // 美國地圖
//map: 'world-mill', // 世界地圖
backgroundColor: 'transparent',
zoomMin: 0.9, // 鼠標縮放時的最小比例
zoomMax: 2.4, // 鼠標縮放時的最大比例
focusOn: {
x: 0.55,
y: 2,
scale: 0.9
},
regionStyle: {
initial: {
fill: '#e5e5e5', // 地圖顏色
"fill-opacity": 1, // 省份(州)是否隱藏,鼠標滑動時顯示; 1:顯示,2:隱藏。
stroke: 'none',
"stroke-width": 0,
"stroke-opacity": 1
},
hover: {
fill: '#ccc', // 鼠標滑動至某省份的高亮顏色。
"fill-opacity": 0.8
},
selected: {
fill: 'yellow'
},
selectedHover: {}
},
markerStyle: {
initial: {
fill: '#fd8888', // 足跡位置的填充顏色
stroke: '#fff' // 足跡位置的描邊顏色
},
hover: {
fill: '#fd2020', // 鼠標滑動至足跡位置后的填充顏色
stroke: '#fff', // 鼠標滑動至足跡位置后的描邊顏色
"fill-opacity": 0.8
},
},
});
</script>
</html>
參照代碼注釋修改顏色和相關樣式。
千萬注意 :在更改地圖時 map: '地圖名稱'
,地圖名稱是地圖數據文件名的后半部分。
例如:
美國地圖文件名:jquery-jvectormap-us-aea.js
那地圖的名稱是:us-aea
但是要注意把 -
(橫杠)更改成 _
(下划線)。 否則不會顯示地圖。
第三部分:如何添加足跡位置。
markers: [ // 足跡位置
// {latLng: [經度(保留兩位小數), 緯度(保留兩位小數)], name: '城市名稱'},
// 推薦查詢經緯度網站:http://www.gpsspg.com/maps.htm
{latLng: [39.90, 116.41], name: '北京'},
{latLng: [31.24, 121.50], name: '上海'},
{latLng: [46.06, 122.06], name: '內蒙古 - 烏蘭浩特'}
]
推薦查詢經緯度網站:http://www.gpsspg.com/maps.htm
語法:{latLng: [經度(保留兩位小數), 緯度(保留兩位小數)], name: '城市名稱'},
。
如何嵌入式到博客中
<iframe style="max-width: 100%"
frameborder="no"
border="0"
marginwidth="0"
marginheight="0"
width="100%"
height="750px"
src="替換成你的足跡地圖鏈接">
</iframe>
把制作好的足跡地圖文件放在服務器上,把訪問連接放在 src
中。
然后將上面的代碼復制到你的博客頁面上即可。
可適配手機端和等比例縮放。
獲取源碼
GitHub : https://github.com/HelloWuJiaYi/jVectorMap-Footprint
廣告時間
歡迎訪問我的個人博客:
我的微信公眾號:
吳佳軼同學