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 使用google maps v2的边栏和选项卡式信息窗口_Javascript_Google Maps - Fatal编程技术网

Javascript 使用google maps v2的边栏和选项卡式信息窗口

Javascript 使用google maps v2的边栏和选项卡式信息窗口,javascript,google-maps,Javascript,Google Maps,有没有人知道一个例子,在这个例子中,谷歌地图被用来创建一个带有两个边栏的地图 和选项卡式信息窗口 ? 标记已定义并准备好用于侧栏 function createMarker(point,name,html) { var marker = new GMarker(point,{icon:myIcon}); // add a line to the side_bar html side_bar_html += '<div id="'

有没有人知道一个例子,在这个例子中,谷歌地图被用来创建一个带有两个边栏的地图

和选项卡式信息窗口

?

标记已定义并准备好用于侧栏

      function createMarker(point,name,html) {
        var marker = new GMarker(point,{icon:myIcon});

        // add a line to the side_bar html
        side_bar_html += '<div id="'+linkid+'"><a href="javascript:myclick(' + (gmarkers.length-1) + ')">' + name + '<\/a><br><\/div>';
        return marker;
      }
选项卡是通过将标记传递到数组中生成的:

      function createTabbedMarker(point,htmls,labels) {
        var marker = new GMarker(point);


我的问题是,如何只获取数组的第一部分[标签],在本例中为“一”,并将其作为边栏的输出?

第一个示例中的边栏不是Google Maps API的一个功能;我只是一个用Javascript更新的表格单元格。

这是可行的。。。如果您查看上的Google Maps文档,或者更具体地说,您将看到它包含两个参数:

一系列的 javascript对象。 在的文档中,您将看到可以通过selectedTab属性传入选项卡索引。在这种情况下,我们可以使用中的代码,只需更新myclick函数:

function myclick(i) {
        gmarkers[i].openInfoWindowHtml(htmls[i]);
      }
变成:

function myclick(i, tab_index) {
        gmarkers[i].openInfoWindowHtml(htmls[i], { selectedTab : tab_index });
      }
我们更新createMarker函数以接受此标记应有的选项卡数:

createMarker(point,name,html,tab_count) {
    // ...snip ...
    var links_html_temp = "";
    while (--tab_count) {
         links_html_temp = '<a href="javascript:myclick(' + i + ',' + tab_count + ')">' + name + ': Tab #' + tab_count + '<\/a><br>' + links_html_temp;
    }
    side_bar_html += links_html_temp;

我将让您自己的具体实现将适当的选项卡计数传递给createMarker。

为什么?“你想干什么?”扎克;尝试解决问题,如果有帮助请告诉我。是的,对不起。。。这是一个非常不清楚的问题。我对它进行了详细阐述,希望它现在更有意义。
function myclick(i, tab_index) {
        gmarkers[i].openInfoWindowHtml(htmls[i], { selectedTab : tab_index });
      }
createMarker(point,name,html,tab_count) {
    // ...snip ...
    var links_html_temp = "";
    while (--tab_count) {
         links_html_temp = '<a href="javascript:myclick(' + i + ',' + tab_count + ')">' + name + ': Tab #' + tab_count + '<\/a><br>' + links_html_temp;
    }
    side_bar_html += links_html_temp;