Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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
Arrays 带有信息框的地图标记数组_Arrays_Api_Google Maps_Infobox - Fatal编程技术网

Arrays 带有信息框的地图标记数组

Arrays 带有信息框的地图标记数组,arrays,api,google-maps,infobox,Arrays,Api,Google Maps,Infobox,我要用这个把头发拔出来。我的总体目标是显示一个信息框,它从名为store_pins的标记数组中获取信息 出于测试目的,我只是在单击其中一个地图标记时显示一个警报,该标记应显示阵列中的项目5。最后,我将显示一个包含图像和文本的信息框 我在代码的底部有一个监听器,当单击标记时,监听器就会工作。问题是我的数组中的信息没有被传递,我得到的不是文本,而是警报中显示的[object] 如果有任何关于我错在哪里的线索,我将不胜感激 var映射; var pop_up_info=“边框:0px纯黑色;背景色

我要用这个把头发拔出来。我的总体目标是显示一个信息框,它从名为store_pins的标记数组中获取信息

出于测试目的,我只是在单击其中一个地图标记时显示一个警报,该标记应显示阵列中的项目5。最后,我将显示一个包含图像和文本的信息框

我在代码的底部有一个监听器,当单击标记时,监听器就会工作。问题是我的数组中的信息没有被传递,我得到的不是文本,而是警报中显示的[object]

如果有任何关于我错在哪里的线索,我将不胜感激


var映射;
var pop_up_info=“边框:0px纯黑色;背景色:ffffff;填充:15px;边距顶部:8px;边框半径:10px;-moz边框半径:10px;-webkit边框半径:10px;方框阴影:1px 1px#888;”;
google.maps.event.addDomListener(窗口“加载”,初始化);
函数初始化(){
var map_center=new google.maps.LatLng(55.144178,-2.254122);
var store_pins=新数组();
var pin_marker=新数组();
存储_引脚=[
['Bellingham Co-Op',55.144178,-2.254122,'pin','Bellingham Coop.jpg','Staff at Bellingham Co-Op'],
[“莱斯特老虎队-金斯顿公园”,55.018754,-1.672230,“橄榄球队”,“金帕克老虎队.jpg”,“斯图与莱斯特老虎队橄榄球队”],
['The Hawick PSA Team',55.421825,-2.797123,'rugby','hawickpsa.jpg','The Hawick PSA Team']//记住最后一个条目上没有逗号!!!
];
变量myOptions={
缩放:3,
minZoom:3,
中心:地图中心,
mapTypeId:google.maps.mapTypeId.ROADMAP
}
map=new google.maps.map(document.getElementById(“trackingT-map”),myOptions);
//主回路
对于(i=0;i当您调用
alert(descr)
时,它试图打印对象本身而不是您想要的信息。您应该将
descr=store_pins[i][5];
移动到您的pin_marker[i]选项块中:

pin_marker[i] = new google.maps.Marker(
            {
                position:   pos,
                map:        map,
                title:      store_pins[i][0],
                icon:       pinIcon,
                shape:      pinShape,
                zIndex:     107
                descr: store_pins[i][5] //add it here
           } 
        );
然后,在onclick侦听器中,您可以像这样打印信息:

        google.maps.event.addListener(pin_marker[i], 'click', function() {
            alert(this.descr);
        });

非常感谢您的回复。我现在在descr=store_pins[I][5]行收到一个“意外标识符”错误;很抱歉,那里不应该有分号。现在编辑代码。如果解决了,该行应该是:descr:store_pins[I][5]因此,要传递一个变量,我必须将它包含在标记本身中?我认为这是一种方法,之前您试图设置descr变量,而程序无法再次引用它。将它放入标记本身只会让您方便地访问该信息。这是一种新的方法,但喜欢它的组合方式,一旦akes sense!非常感谢您的投入!