Javascript 谷歌地图
一整天都在努力通过文本链接在谷歌地图上设置一个pan。看起来映射本身的id并没有传递给函数,但我已经尝试了很多方法,但没有任何乐趣Javascript 谷歌地图,javascript,google-maps,pan,Javascript,Google Maps,Pan,一整天都在努力通过文本链接在谷歌地图上设置一个pan。看起来映射本身的id并没有传递给函数,但我已经尝试了很多方法,但没有任何乐趣 <script type="text/javascript"> var home = new google.maps.LatLng(4.915833, 10.195313); function initialize() { var myOptions = { zoom: 2,
<script type="text/javascript">
var home = new google.maps.LatLng(4.915833, 10.195313);
function initialize() {
var myOptions = {
zoom: 2,
center: home,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: false,
panControl: true,
panControlOptions: {
position: google.maps.ControlPosition.LEFT_CENTER
},
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
},
scaleControl: false,
streetViewControl: true,
streetViewControlOptions: {
position: google.maps.ControlPosition.LEFT_CENTER
}
}
var map = new google.maps.Map(document.getElementById("map"), myOptions);
setMarkers(map, destinations);
clickroute(map);
}
var destinations = [
['Marbella', 36.509937, -4.886352],
['Algarve', 37.016945, -7.928728],
['London', 51.508129, -0.128005],
['Istanbul', 41.00527, 28.97696],
['Whistler', 50.116168, -122.959423]
];
function setMarkers(map, locations) {
var image = new google.maps.MarkerImage('img/marker.png',
new google.maps.Size(41, 63),
new google.maps.Point(0,0));
for (var i = 0; i < locations.length; i++) {
var destination = locations[i];
var myLatLng = new google.maps.LatLng(destination[1], destination[2]);
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
icon: image,
title: destination[0]
});
}
}
function clickroute(lati, long) {
var latLng = new google.maps.LatLng(51.433373, -0.712251);
map.panTo(latLng);
}
</script>
<li onclick="clickroute()">test</li>
var home=new google.maps.LatLng(4.915833,10.195313);
函数初始化(){
变量myOptions={
缩放:2,
中心:家,
mapTypeId:google.maps.mapTypeId.ROADMAP,
mapTypeControl:false,
泛控制:对,
全控选项:{
位置:google.maps.ControlPosition.LEFT_CENTER
},
动物控制:对,
ZoomControl选项:{
样式:google.maps.ZoomControlStyle.LARGE,
位置:google.maps.ControlPosition.LEFT_CENTER
},
scaleControl:false,
街景控制:对,
街景控制选项:{
位置:google.maps.ControlPosition.LEFT_CENTER
}
}
var map=new google.maps.map(document.getElementById(“map”),myOptions);
设置标记(地图、目的地);
点击路线(地图);
}
var目的地=[
[Marbella',36.509937,-4.886352],
[Algarve',37.016945,-7.928728],
[伦敦,51.508129,-0.128005],
[Istanbul',41.00527,28.97696],
[Whistler',50.116168,-122.959423]
];
功能设置标记(地图、位置){
var image=new google.maps.MarkerImage('img/marker.png',
新谷歌地图大小(4163),
新的google.maps.Point(0,0));
对于(变量i=0;i
有什么可能导致这个问题的想法吗?我收到一个js错误
Uncaught TypeError: Object #<HTMLDivElement> has no method 'panTo'
uncaughttypeerror:对象#没有方法“panTo”
谢谢
Richard点击路线(地图)代码>与定义不兼容
function clickroute(lati, long) {
var latLng = new google.maps.LatLng(51.433373, -0.712251);
map.panTo(latLng);
}
我猜你想要什么
function clickroute(map) {
var latLng = new google.maps.LatLng(51.433373, -0.712251);
map.panTo(latLng);
}
更新:
我不知道你到底想要什么
onclick=clickroute()
不向函数传递任何参数
此外,clickroute中没有全局地图。@onemach是正确的
一,。
您必须在javascript的开头将map
声明为全局变量。只需做一个var映射紧跟在
标记之后的代码>声明
二,。
同时,地图初始化应更改为
map = new google.maps.Map(document.getElementById("map"), myOptions); // without the 'var'
三,。您的呼叫单击route()
onClick of
,不带参数。因此,更改clickroute()
的定义如下:
function clickroute() { //just omit the 'lati' and 'long'
var latLng = new google.maps.LatLng(51.433373, -0.712251);
map.panTo(latLng);
}
现在点击测试
你的地图将移动到点(51.433373,-0.712251)谢谢你花时间回复,仍然没有乐趣,同样的错误:(