Javascript 谷歌地图代码能在Excel';什么是浏览器控制?
我用Google Maps API编写了一个小脚本,它在Chrome或IE上运行得非常好。然而,当我尝试使用Excel的Webbrowser控件运行地图时,它显示了一条错误消息,页面无法正常加载 我不知道那里发生了什么事。我怀疑我的JavaScript/HTML代码有问题,因为我以前根本没有使用这两种语言的经验。excel提供的错误消息为: 此页上的脚本中出现错误。 行:0, 字符:0, 错误:脚本错误, 代码:0, URL:“ 我的想法是HTML部分有问题,但我不确定 我的代码是Javascript 谷歌地图代码能在Excel';什么是浏览器控制?,javascript,html,excel,google-maps,Javascript,Html,Excel,Google Maps,我用Google Maps API编写了一个小脚本,它在Chrome或IE上运行得非常好。然而,当我尝试使用Excel的Webbrowser控件运行地图时,它显示了一条错误消息,页面无法正常加载 我不知道那里发生了什么事。我怀疑我的JavaScript/HTML代码有问题,因为我以前根本没有使用这两种语言的经验。excel提供的错误消息为: 此页上的脚本中出现错误。 行:0, 字符:0, 错误:脚本错误, 代码:0, URL:“ 我的想法是HTML部分有问题,但我不确定 我的代码是 <!D
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Circle & Info</title>
<style>
html, body, #map-canvas {
height: 100%;
margin: 0px;
padding: 0px
}
</style>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true"></script>
<script>
var locations = [
['St. Martin Catholic School', ' 4228', 42.9698, -81.2537, ' 266', ' 386', 'FE7569', '-1', ''],
['St. John Catholic French Immersion School', ' 4045', 42.97827, -81.2335, ' 350', ' 334', 'FE7569', '-1', ''],
['St. Mary Choir Catholic School', ' 4244', 42.988, -81.2284, ' 231', ' 311', 'FE7569', '-1', ''],
['Holy Rosary Catholic School', ' 3312', 42.9663, -81.2302, ' 165', ' 234', 'FE7569', '-1', ''],
['St. Michael Catholic School, London', ' 4301', 43.0042, -81.2446, ' 182', ' 268', 'FE7569', '-1', ''],
['New School', ' 99999',42.9809401, -81.2548567, ' ', ' 100', '9', '0', 'Not']
];
var markers = [];
var map;
var circles = [];
var radius;
function initialize() {
radius = document.getElementById("radius_value").value;
if (radius == "" || isNaN(radius)) {
radius = 2;
}
radius = Number(radius * 1000);
var myOptions = {
center: new google.maps.LatLng(42.9809401, -81.2548567),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("default"), myOptions);
setMarkers(radius);
}
var bounds = new google.maps.LatLngBounds();
function setMarkers(radius) {
var i;
for (i = 0; i != markers.length; ++i) {
markers[i].setMap(null);
}
for (i = 0; i < locations.length; i++) {
var name = locations[i][0];
var sfis = locations[i][1];
var lat = locations[i][2];
var long = locations[i][3];
var ade = locations[i][4];
var otg = locations[i][5];
var pinColor = locations[i][6];
var Indicator = locations[i][7];
var Duplicate = locations[i][8];
var latlngset = new google.maps.LatLng(lat, long);
var pinImage;
if (Indicator==0){
pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_xpin_letter&chld=pin|N|"+pinColor,
new google.maps.Size(21, 34),
new google.maps.Point(0, 0),
new google.maps.Point(10, 34));
} else if (Indicator==-1) {
if (Duplicate=="Duplicate") {
pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_xpin_letter&chld=pin_sleft|"+(i+1)+"|"+pinColor,
new google.maps.Size(50, 34),
new google.maps.Point(0, 0),
new google.maps.Point(20, 34));
} else {
pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_xpin_letter&chld=pin|"+(i+1)+"|"+pinColor,
new google.maps.Size(50, 34),
new google.maps.Point(0, 0),
new google.maps.Point(10, 34));
}
} else {
if (Duplicate =="Duplicate") {
pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_xpin_letter&chld=pin_sright|"+Indicator+"|"+pinColor,
new google.maps.Size(50, 50),
new google.maps.Point(0, 0),
new google.maps.Point(0, 34));
} else {
pinImage = new google.maps.MarkerImage("http://chart.apis.google.com/chart?chst=d_map_xpin_letter&chld=pin|"+Indicator+"|"+pinColor,
new google.maps.Size(50, 50),
new google.maps.Point(0, 0),
new google.maps.Point(10, 34));}
}
var marker = new google.maps.Marker({
map: map,
title: name,
draggable:true,
position: latlngset,
icon: pinImage,
animation: google.maps.Animation.DROP
});
markers.push(marker);
map.setCenter (marker.getPosition())
var populationOptions = {
strokeColor: '#FF0000',
strokeOpacity: 0.2,
strokeWeight: 2,
fillColor: '#FF0000',
fillOpacity: 0.1,
map: map,
center: latlngset,
radius: radius
};
var content = '<div id="content">' +
'<h1 id="firstHeading" class="firstHeading">' + name +'</h1>' +
'<div id="bodyContent">' +
'<p><b>SFIS ID:</b>' + sfis + '</p>' +
'<p><b>ADE:</b>' + ade + '</p>' +
'<p><b>OTG:</b>' + otg + '</p>' +
'</div>' +
'</div>';
var infowindow = new google.maps.InfoWindow()
google.maps.event.addListener(marker, 'click', (function(marker, content, infowindow) {
return function() {
infowindow.setContent(content);
infowindow.open(map, marker);
};
})(marker, content, infowindow));
new google.maps.Circle(populationOptions);
bounds.extend(markers[i].position);
map.fitBounds(bounds);
}
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body onload="initialize()">
<div style="position:fixed;top:10px;right:200px;z-index:2000">
<input type="text" id="radius_value">
<button onclick="initialize()">Change Radius (km)</button>
</div>
<div id="default" style="width:100%; height:100%"></div>
</body>
</html>
圈和信息
html,正文,#地图画布{
身高:100%;
边际:0px;
填充:0px
}
变量位置=[
[圣马丁天主教学校','4228','42.9698,-81.2537','266','386','FE7569','-1',',
[圣约翰天主教法语浸入式学校,'4045',42.97827,-81.2335,'350','334','FE7569','-1',',
[St.Mary Choir天主教学校','4244',42.988,-81.2284','231','311','FE7569','-1',',
[Holy Rosary Catholic School',3312',42.9663,-81.2302',165',234',FE7569','-1','',
[St.Michael Catholic School,London','4301','43.0042,-81.2446','182','268','FE7569','-1',',
[“新学校”、“99999”、“42.9809401、-81.2548567”、“100”、“9”、“0”、“非”]
];
var标记=[];
var映射;
var循环=[];
变异半径;
函数初始化(){
半径=document.getElementById(“半径值”).value;
如果(半径==“”| | isNaN(半径)){
半径=2;
}
半径=数量(半径*1000);
变量myOptions={
中心:新google.maps.LatLng(42.9809401,-81.2548567),
缩放:8,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
map=new google.maps.map(document.getElementById(“默认”),myOptions);
设置标记(半径);
}
var bounds=new google.maps.LatLngBounds();
函数设置标记(半径){
var i;
对于(i=0;i!=markers.length;++i){
标记[i].setMap(空);
}
对于(i=0;i”+
“ADE:”+ADE+”'+
“OTG:”+OTG+“”+
'' +
'';
var infowindow=new google.maps.infowindow()
google.maps.event.addListener(标记,'单击',(功能(标记,内容,信息窗口){
返回函数(){
infowindow.setContent(content);
信息窗口。打开(地图、标记);
};
})(标记、内容、信息窗口);
新的google.maps.Circle(populationOptions);
扩展(标记[i]。位置);
映射边界(bounds);
}
}
google.maps.event.addDomListener(窗口“加载”,初始化);
WebBrowser1.Navigate ("about:blank")
WebBrowser1.Navigate ("www.rachelgallen.com/googlemap.html")
linkname=Sheets("Sheet1").Range(C1)
Call Sheets("Sheet1").WebControl1.Navigate (linkname)