Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.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

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商店定位器库,使标记在搜索之前不可见_Javascript_Google Maps - Fatal编程技术网

Javascript 自定义Google商店定位器库,使标记在搜索之前不可见

Javascript 自定义Google商店定位器库,使标记在搜索之前不可见,javascript,google-maps,Javascript,Google Maps,我的客户希望在他的网络商店里有一张地图,类似于谷歌商店定位器库可以实现的地图。然而,他希望地图在你搜索一个位置之前不显示任何标记,只画3个商店。然后,当您搜索其他位置时,地图将被重新绘制,并且仅打印最近的3个标记 我在玩弄配置文件,甚至玩弄JS文件本身,但毫无用处。这似乎是一项容易的任务,但我不能隐藏标记。我已经能够使用此代码使其工作的商店列表 first_time = false; ... ... if(!first_time){ items_per_panel = 0; first_

我的客户希望在他的网络商店里有一张地图,类似于谷歌商店定位器库可以实现的地图。然而,他希望地图在你搜索一个位置之前不显示任何标记,只画3个商店。然后,当您搜索其他位置时,地图将被重新绘制,并且仅打印最近的3个标记

我在玩弄配置文件,甚至玩弄JS文件本身,但毫无用处。这似乎是一项容易的任务,但我不能隐藏标记。我已经能够使用此代码使其工作的商店列表

first_time = false;
...
...
if(!first_time){
  items_per_panel = 0;
  first_time = true;
}else{
    items_per_panel = 1;
} // if
然而,我完全被标记部分卡住了。我怀疑我可以自定义代码,它可以读取

 marker.setMap(this.getMap());

但是我不知道怎么做。

我通过使用item属性item.getId()并检索列表来完成代码。我通过邻近性存储了所有的第一个元素,然后,在绘制管脚的方法中,我使用了这个存储数组。如下所示(我的数组称为stores\u list):

for(变量i=0,ii=Math.min(每个面板的项目数,stores.length);i
  for (var i = 0, ii = Math.min(items_per_panel, stores.length); i < ii; i++) {
  // Get store data

  var storeLi = stores[i].getInfoPanelItem();

  stores_list.push(stores[i].getId()); // added line

 ....

 if(jQuery.inArray(store.getId(), stores_list) != -1 ) marker.setMap(this.getMap());  // added condition