似乎是一个非常基本的东西,但我似乎没有找到答案。 这是我的Google地图代码:
var marker = new google.maps.Marker({
position: new google.maps.LatLng(123, 123),
url: "http://www.google.com",
map: map
});
...
google.maps.event.addListener(marker, 'click', function() {
window.location.href = marker.url;
});
我需要更改什么,在新窗口中打开链接?
非常感谢!
答案 0 :(得分:10)
您必须使用open
对象的方法window
,如下所示:
window.open("http://www.w3schools.com");
所以你的代码将是这样的:
google.maps.event.addListener(marker, 'click', function() {
window.open(marker.url);
});
访问此link,了解open
方法的概述以及您可以设置的选项。
答案 1 :(得分:0)
所以我使用了这种方法但是当我在循环中制作大量标记时,每个标记都有不同的URL,这就是我需要采取的方法。


 var newLatlng = new google.maps.LatLng(row [0],row [1]);
 var marker = new google.maps.Marker({
 position:newLatlng,
 map:map,
 title:row [2],
 url:row [3]&# xA;});
 google.maps.event.addListener(marker,'click',function(){
 window.open('https://www.youtube.com/watch?v='+this.url);&# xA;});



 请注意,密钥在侦听器代码中使用 this.url
。如果我在侦听器代码中使用 marker.url
,它将打开所有标记的许多URL的最后一个。