Javascript 如何在谷歌地图信息窗口中单击电子邮件ID时打开电子邮件应用程序
我想在点击谷歌地图信息窗口中的电子邮件ID时打开带有预填充主题“subject”的电子邮件应用程序。下面是我为显示电子邮件ID而编写的代码,我不确定如何继续Javascript 如何在谷歌地图信息窗口中单击电子邮件ID时打开电子邮件应用程序,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我想在点击谷歌地图信息窗口中的电子邮件ID时打开带有预填充主题“subject”的电子邮件应用程序。下面是我为显示电子邮件ID而编写的代码,我不确定如何继续 function init(resp) { var mapProp = { center : new google.maps.LatLng(resp.data[0].Lat, resp.data[0].Lon), zoom : 7,
function init(resp) {
var mapProp = {
center : new google.maps.LatLng(resp.data[0].Lat,
resp.data[0].Lon),
zoom : 7,
};
var map = new google.maps.Map(document.getElementById("googleMap"),
mapProp);
$.each(resp.data, function(index, value) {
var myLatlng = new google.maps.LatLng(value.Lat, value.Lon);
var marker = new google.maps.Marker({
position : myLatlng,
label : value['Number'],
content : "Phone: " + value['Phone Number'] + '<br>'
+ "E-Mail: " + '<a href="'+ value['E-Mail']+'">'+ value['E-Mail'] +'</a>'
});
var infowindow = new google.maps.InfoWindow({
content : "Phone: " + value['Phone Number'] + '<br>'
+ "E-Mail: " + '<a href="'+ value['E-Mail']+'">'+ value['E-Mail'] +'</a>'
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.open(map, marker);
});
// To add the marker to the map, call setMap();
marker.setMap(map);
});
函数初始化(resp){
var mapProp={
中心:新的google.maps.LatLng(resp.data[0].Lat,
相应数据[0].Lon),
缩放:7,
};
var map=new google.maps.map(document.getElementById(“googleMap”),
mapProp);
$。每个(分别为数据、函数(索引、值){
var mylatng=new google.maps.LatLng(value.Lat,value.Lon);
var marker=new google.maps.marker({
职位:myLatlng,
标签:值['Number'],
内容:“电话:“+value['Phone Number']+'
”
+电子邮件:“+”
});
var infowindow=new google.maps.infowindow({
内容:“电话:“+value['Phone Number']+'
”
+电子邮件:“+”
});
google.maps.event.addListener(标记'click',函数(){
信息窗口。打开(地图、标记);
});
//要将标记添加到映射,请调用setMap();
marker.setMap(map);
});
您可以使用JavaScript的。您可以更改不同参数的值以适合您的电子邮件
因此,在您的代码中,您可以将以下内容作为信息窗口中的内容:
var infowindow = new google.maps.InfoWindow({
content :'<div id="content">'+
'<a href="mailto:username@example.com?subject=Subject&body=message%20goes%20here">'+
'Click to Email</a> '+
'</div>'
});
var infowindow=new google.maps.infowindow({
内容:''+
' '+
''
});
以下是示例代码。若要了解其工作原理,可以将其复制并另存为html文件,然后在浏览器中运行。请注意更改API密钥:
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<title>Info Windows</title>
<style>
/* Always set the map height explicitly to define the size of the div
* element that contains the map. */
#map {
height: 100%;
}
/* Optional: Makes the sample page fill the window. */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<div id="map"></div>
<script>
// This example displays a marker at the center of Australia.
// When the user clicks the marker, an info window opens.
function initMap() {
var uluru = {lat: -25.363, lng: 131.044};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: uluru
});
var contentString = '<div id="content">'+
'<a href="mailto:username@example.com?subject=Subject&body=message%20goes%20here">'+
'Click to Email</a> '+
'</div>';
var infowindow = new google.maps.InfoWindow({
content: contentString
});
var marker = new google.maps.Marker({
position: uluru,
map: map,
title: 'Uluru (Ayers Rock)'
});
marker.addListener('click', function() {
infowindow.open(map, marker);
});
}
</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=CHANGE_API_KEY_HERE&callback=initMap">
</script>
</body>
</html>
信息窗口
/*始终明确设置贴图高度以定义div的大小
*包含映射的元素*/
#地图{
身高:100%;
}
/*可选:使示例页面填充窗口*/
html,正文{
身高:100%;
保证金:0;
填充:0;
}
//此示例在澳大利亚中部显示一个标记。
//当用户单击标记时,将打开一个信息窗口。
函数initMap(){
var uluru={lat:-25.363,液化天然气:131.044};
var map=new google.maps.map(document.getElementById('map'){
缩放:4,
中心:乌卢鲁
});
var contentString=''+
' '+
'';
var infowindow=new google.maps.infowindow({
内容:contentString
});
var marker=new google.maps.marker({
职位:乌卢鲁,
地图:地图,
标题:“乌卢鲁(艾尔斯岩)”
});
marker.addListener('click',function()){
信息窗口。打开(地图、标记);
});
}
希望这有帮助