gmap使用教程(地图标记、导航、搜索功能详解)

gmap使用教程(地图标记、导航、搜索功能详解)

gmap使用教程(地图标记、导航、搜索功能详解)

介绍

gmap是谷歌地图的一个应用程序接口(API),可以在网站上嵌入谷歌地图,并添加自定义标记、导航和搜索功能。使用gmap可以为用户提供更加方便和实用的地图服务。

准备工作

在使用gmap之前,需要进行一些准备工作:

1. 在谷歌开发者平台(https://console.developers.google.com/)上创建一个项目,并启用Google Maps JavaScript API。

2. 获取API密钥,用于在网站上使用gmap。

地图标记

添加地图

首先,在网站中添加一个地图。在HTML文件中添加以下代码:

“`

“`

然后,在JavaScript文件中添加以下代码:

“`

function initMap() {

var map = new google.maps.Map(document.getElementById(‘map’), {

center: {lat: 37.7749, lng: -122.4194},

zoom: 8

});

}

“`

这段代码会创建一个地图,并将其显示在网页上。其中,center属性指定地图的中心点,zoom属性指定地图的缩放级别。

添加标记

接着,可以在地图上添加标记。在JavaScript文件中添加以下代码:

“`

function initMap() {

var map = new google.maps.Map(document.getElementById(‘map’), {

center: {lat: 37.7749, lng: -122.4194},

zoom: 8

});

var marker = new google.maps.Marker({

position: {lat: 37.7749, lng: -122.4194},

map: map,

title: ‘San Francisco’

});

}

“`

这段代码会在地图上添加一个标记,并在标记上显示一个标题。其中,position属性指定标记的位置,map属性指定标记所在的地图。

导航

添加导航按钮

在HTML文件中添加以下代码:

“`

“`

这段代码会添加一个按钮,用于触发导航功能。

添加导航功能

在JavaScript文件中添加以下代码:

“`

function initMap() {

var map = new google.maps.Map(document.getElementById(‘map’), {

center: {lat: 37.7749, lng: -122.4194},

zoom: 8

});

var marker = new google.maps.Marker({

position: {lat: 37.7749, lng: -122.4194},

map: map,

title: ‘San Francisco’

});

var directionsService = new google.maps.DirectionsService();

var directionsRenderer = new google.maps.DirectionsRenderer();

directionsRenderer.setMap(map);

document.getElementById(‘directions’).addEventListener(‘click’, function() {

var request = {

origin: {lat: 37.7749, lng: -122.4194},

destination: {lat: 37.3382, lng: -121.8863},

travelMode: ‘DRIVING’

};

directionsService.route(request, function(result, status) {

if (status == ‘OK’) {

directionsRenderer.setDirections(result);

}

});

});

}

“`

这段代码会添加一个导航功能,并在按钮被点击时触发导航。其中,origin属性指定起点,destination属性指定终点,travelMode属性指定导航方式。

搜索功能

添加搜索框

在HTML文件中添加以下代码:

“`

“`

这段代码会添加一个搜索框和一个搜索按钮。

添加搜索功能

在JavaScript文件中添加以下代码:

“`

function initMap() {

var map = new google.maps.Map(document.getElementById(‘map’), {

center: {lat: 37.7749, lng: -122.4194},

zoom: 8

});

var marker = new google.maps.Marker({

position: {lat: 37.7749, lng: -122.4194},

map: map,

title: ‘San Francisco’

});

var directionsService = new google.maps.DirectionsService();

var directionsRenderer = new google.maps.DirectionsRenderer();

directionsRenderer.setMap(map);

var searchBox = new google.maps.places.SearchBox(document.getElementById(‘search’));

document.getElementById(‘searchButton’).addEventListener(‘click’, function() {

var places = searchBox.getPlaces();

if (places.length == 0) {

return;

}

var bounds = new google.maps.LatLngBounds();

places.forEach(function(place) {

if (!place.geometry) {

return;

}

var marker = new google.maps.Marker({

map: map,

position: place.geometry.location

});

if (place.geometry.viewport) {

bounds.union(place.geometry.viewport);

} else {

bounds.extend(place.geometry.location);

}

});

map.fitBounds(bounds);

});

}

“`

这段代码会添加一个搜索功能,并在搜索按钮被点击时触发搜索。其中,SearchBox对象用于创建一个搜索框,getPlaces()方法用于获取搜索结果,LatLngBounds对象用于设置地图的边界。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 387999187@qq.com 举报,一经查实,本站将立刻删除。https://www.8118.com.cn/chuang/38595.html
返回顶部