Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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.map.data.feature上的外部链接而不是标记上的单击_Javascript_Jquery_Google Maps_Google Maps Api 3 - Fatal编程技术网

Javascript 如何触发google.map.data.feature上的外部链接而不是标记上的单击

Javascript 如何触发google.map.data.feature上的外部链接而不是标记上的单击,javascript,jquery,google-maps,google-maps-api-3,Javascript,Jquery,Google Maps,Google Maps Api 3,我想从google.map.data.feature上的外部链接触发点击事件 我的代码看起来像这样 function init(query){ map = new google.maps.Map(document.getElementsByClassName('map')[0], { zoom: 12, center: { lat: 17.3850, lng: 78.4867 } }); map.data.setStyle(featur

我想从google.map.data.feature上的外部链接触发点击事件

我的代码看起来像这样

function init(query){

  map = new google.maps.Map(document.getElementsByClassName('map')[0], {
    zoom: 12,
    center: {
      lat: 17.3850,
      lng: 78.4867
    }
  });

map.data.setStyle(feature=>{
    return {url:`image`, scaledSize: new google.maps.Size(32,32)}
})
map.data.addListener('click', clickEventOnMapData);
map.data.loadGeoJson(`some url`);

}
我已经编写了clickEventOnMapData,它在单击标记时打开了一个窗口

现在我有了一个外部按钮,我想为特定的data.feature触发相同的clickEventOnMap

代码是

function openWindow(lsqid){
  map.data.forEach((feature)=>{
    if(feature.getProperty('lsqid') === lsqid){

      google.maps.event.trigger(feature, 'click');
    }
  });
}
现在从上面我得到了我想要触发点击事件的特性。但我无法触发特定功能的单击事件。此外,控制台上也不会显示任何错误。

我通过

function openWindow(lsqid){
  map.data.forEach((feature)=>{
    if(feature.getProperty('lsqid') === lsqid){

      clickEventOnMapData({feature});
    }
  });
}

它起作用了:)

它起作用了,因为我只使用了事件的特征值。我仍然不知道如何使它作为默认事件工作