首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >融合表& Map w/侧栏:从数字到加密in在非洲地图示例

融合表& Map w/侧栏:从数字到加密in在非洲地图示例
EN

Stack Overflow用户
提问于 2013-08-27 14:03:45
回答 2查看 737关注 0票数 0

感谢所有帮助我学习至今的人!

我必须根据客户端反馈更改以前的映射,现在我正在尝试重新创建以下API v3示例:@geocodezip中的融合表层示例:

sidebar.html

我仔细地复制、粘贴并将原始代码更改到我的页面中,但是我遇到了以下问题:

a.)infoWindows没有被抑制,新的也没有被创建;

b.)单击侧栏中的项对地图没有影响。

我的猜测是,这与新的查询语法和加密ID有关,而示例代码(非洲地图)则基于数字ID。我想我搞砸了。

,我的问题是:如何更改/更新我的代码,使我的地图功能像非洲地图的例子?谢谢!

My地图: http://hepac.ca/map/

我的融合表: https://www.google.com/fusiontables/data?docid=1DxjRqzjtC7-Oryt8N9ZaJ0n1IXRllDjodnbEJYo

我认为有关的守则是:

代码语言:javascript
复制
function createSidebar() {
  // https://www.google.com/fusiontables/api/query?sql=SELECT%20ROWID,%20%2A%20FROM%20564705

  //set the query using the parameter
  var queryText = encodeURIComponent("http://www.google.com/fusiontables/gvizdata?tq=SELECT * FROM 1DxjRqzjtC7-Oryt8N9ZaJ0n1IXRllDjodnbEJYo");
  var query = new google.visualization.Query(queryText);
  var queryText = encodeURIComponent("SELECT 'Description', 'Network', 'Contact', 'Email', 'Latitude', 'Longitude' FROM 1DxjRqzjtC7-Oryt8N9ZaJ0n1IXRllDjodnbEJYo");
  var query = new google.visualization.Query('http://www.google.com/fusiontables/gvizdata?tq='  + queryText);


  //set the callback function
  query.send(getData);

}

和:

代码语言:javascript
复制
layer = new google.maps.FusionTablesLayer({
      query: {
        select: "col2",
        from: "1DxjRqzjtC7-Oryt8N9ZaJ0n1IXRllDjodnbEJYo",
        where: ""
      },
      suppressInfoWindows: true
    });  

  layer.setMap(map);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-27 15:55:16

infoWindows正在被压制。在您的代码中有一个“单击”监听器,使它们显示出来:

代码语言:javascript
复制
  google.maps.event.addListener(layer, "click", function(event) {
    infoWindow.close();
    infoWindow.setContent(event.infoWindowHtml);
    infoWindow.setPosition(event.latLng);
    infoWindow.open(map);
  });
票数 0
EN

Stack Overflow用户

发布于 2013-08-27 16:48:28

我的Javascript错误似乎与我从融合表中调用的列数有关。完成了这些修补程序,并且工作正常:

代码语言:javascript
复制
var queryText = encodeURIComponent("SELECT 'Description', 'Network', 'Contact', 'Website', 'Email', 'Latitude', 'Longitude' FROM 1DxjRqzjtC7-Oryt8N9ZaJ0n1IXRllDjodnbEJYo");

然后,以后:

代码语言:javascript
复制
function myFTclick(row) {
   var Description = FTresponse.getDataTable().getValue(row,0);
   var Network = FTresponse.getDataTable().getValue(row,1);
   var Contact = FTresponse.getDataTable().getValue(row,3);
   var Email = FTresponse.getDataTable().getValue(row,4);
   var lat =  FTresponse.getDataTable().getValue(row,5);
   var lng =  FTresponse.getDataTable().getValue(row,6);
   var position = new google.maps.LatLng(lat, lng);

我可以通过使用列值来运行它--例如,.getValue(行,x) --尽管我不知道如何为“x”找到正确的数值。我做这件事是经过反复试验的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18467660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档