Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击标记时显示信息窗口_Javascript_Google Maps - Fatal编程技术网

Javascript 单击标记时显示信息窗口

Javascript 单击标记时显示信息窗口,javascript,google-maps,Javascript,Google Maps,我想为我的地图使用一个信息窗口 当我运行此代码时,信息窗口不会出现。我希望它在单击标记时显示 <div id="map" style="width:100%;height:320px"></div> <script> function myMap() { var mapCanvas = document.getElementById("map"); var mapOptions = { center: new g

我想为我的地图使用一个信息窗口

当我运行此代码时,信息窗口不会出现。我希望它在单击标记时显示

<div id="map" style="width:100%;height:320px"></div>
<script>
    function myMap() {
      var mapCanvas = document.getElementById("map");
      var mapOptions = {
        center: new google.maps.LatLng(47.3921611, 8.4957963),
        zoom: 14
      }

      var contentString = '<div id="content">'+
          '<div id="siteNotice">'+
          '</div>'+
          '<h1 id="firstHeading" class="firstHeading">Uluru</h1>'+
          '<div id="bodyContent">'+
          '<p><b>Uluru</b>, also referred to as <b>Ayers Rock</b>, is a large ' +
          'sandstone rock formation in the southern part of the '+
          'Northern Territory, central Australia. It lies 335&#160;km (208&#160;mi) '+
          'south west of the nearest large town, Alice Springs; 450&#160;km '+
          '(280&#160;mi) by road. Kata Tjuta and Uluru are the two major '+
          'features of the Uluru - Kata Tjuta National Park. Uluru is '+
          'sacred to the Pitjantjatjara and Yankunytjatjara, the '+
          'Aboriginal people of the area. It has many springs, waterholes, '+
          'rock caves and ancient paintings. Uluru is listed as a World '+
          'Heritage Site.</p>'+
          '<p>Attribution: Uluru, <a href="https://en.wikipedia.org/w/index.php?title=Uluru&oldid=297882194">'+
          'https://en.wikipedia.org/w/index.php?title=Uluru</a> '+
          '(last visited June 22, 2009).</p>'+
          '</div>'+
          '</div>';

      var infowindow = new google.maps.InfoWindow({
        content: contentString
      });

      var map = new google.maps.Map(mapCanvas, mapOptions);
      var image = '<?php echo bloginfo("url") ?>/G_marker.png';
      var beachMarker = new google.maps.Marker({
        position: map.getCenter(),
        map: map,
        icon: image,
      });
    }
    marker.addListener('click', function() {
            infowindow.open(map, marker);
        });
    google.maps.event.addDomListener(window, 'load', myMap);
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCTzoFPuiNSd_JH_jGT7Pq_KMM7XoV2PMM&callback=myMap"></script>

函数myMap(){
var mapCanvas=document.getElementById(“map”);
变量映射选项={
中心:新google.maps.LatLng(47.3921611,8.4957963),
缩放:14
}
var contentString=''+
''+
''+
“乌鲁鲁”+
''+
“Uluru,也称为艾尔斯岩,是一个大型的”+
“南部的砂岩岩层”+
“澳大利亚中部的北领地。它位于335公里(208英里)处”+
“最近的大城镇艾丽斯·斯普林斯西南部;450 ;公里”+
"(280)英里(约160英里)的公路,卡塔特朱塔和乌鲁鲁是两个主要城市"+
“乌卢鲁-卡塔朱塔国家公园的特征。乌卢鲁是”+
“对Pitjantjatjara和Yankunytjatjara来说是神圣的”+
“该地区的土著居民。这里有许多泉水和水坑,”+
“岩洞和古画。乌鲁鲁被列为世界”+
“遗产地。

”+ “归属:乌卢鲁,”+ (上次访问日期为2009年6月22日)。

'+ ''+ ''; var infowindow=new google.maps.infowindow({ 内容:contentString }); var map=new google.maps.map(mapCanvas,mapOptions); var image='/G_marker.png'; var beachMarker=new google.maps.Marker({ 位置:map.getCenter(), 地图:地图, 图标:图像, }); } marker.addListener('click',function()){ 信息窗口。打开(地图、标记); }); google.maps.event.addDomListener(窗口'load',myMap);
我实际上复制了InfoWindow部分并将其粘贴到我的代码中,但我仍然不明白为什么它不起作用。如何修复此问题?

您创建了“beachMarker”变量,然后使用“marker”:p

试用:

beachMarker.addListener('click', function() {
        infowindow.open(map, beachMarker);
    });

我在发布的代码中遇到一个javascript错误:
uncaughtreferenceerror:marker未定义
。您的代码调用该变量
beachMarker
,并且应该在
myMap
(初始化)函数(在该变量存在的范围内)内部设置单击侦听器

代码片段:

html,
身体,
#地图{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}

函数myMap(){
var mapCanvas=document.getElementById(“map”);
变量映射选项={
中心:新google.maps.LatLng(47.3921611,8.4957963),
缩放:14
}
var contentString=''+
'' +
'' +
“乌鲁鲁”+
'' +
“Uluru,也称为艾尔斯岩,是一个大型的”+
“南部的砂岩岩层”+
“澳大利亚中部的北领地。它位于335公里(208英里)处”+
“最近的大城镇艾丽斯·斯普林斯西南部;450 ;公里”+
"(280)英里(约160英里)的公路,卡塔特朱塔和乌鲁鲁是两个主要城市"+
“乌卢鲁-卡塔朱塔国家公园的特征。乌卢鲁是”+
“对Pitjantjatjara和Yankunytjatjara来说是神圣的”+
“该地区的土著居民。这里有许多泉水和水坑,”+
“岩洞和古画。乌鲁鲁被列为世界”+
“遗产地。

”+ “归属:乌卢鲁,”+ (上次访问日期为2009年6月22日)。

'+ '' + ''; var infowindow=new google.maps.infowindow({ 内容:contentString }); var map=new google.maps.map(mapCanvas,mapOptions); var图像处理http://maps.google.com/mapfiles/ms/micons/blue.png'; var beachMarker=new google.maps.Marker({ 位置:map.getCenter(), 地图:地图, 图标:图像, }); beachMarker.addListener('click',function(){ 打开(地图,海滩标志); }); }