javascript - 如何确定 map 或标记是否被单击

标签 javascript here-api

再次感谢出色的 Here map API。

我们目前正在努力如何确定标记或 map 本身是否被点击。我们已向 map 和标记添加了事件监听器(作为组添加)。
现在,当我们单击 map 时,两个事件监听器都会被触发。

我们是否遗漏了 API 文档中的某些内容?我认为应该有一种方法来获取点击内容的正确信息。

map 事件监听器

map.addEventListener('tap', (event) => {
  action(event);
});

标记事件监听器

marker.addEventListener('tap', (event) => {
  action(event);
});

提前致谢。

最佳答案

最好在 map 对象上保留单个监听器。

关键是检查 event.target 的实例:

map.addEventListener('tap', event => {
   if (event.target instanceof H.map.Marker) {
       // Some action. Typically, you want to use the data that you may have referenced
       // in the marker creation code, or get the coordinates. Here we log the data
       console.log( event.target.getData() );
    }
}

关于javascript - 如何确定 map 或标记是否被单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52888052/

相关文章:

javascript - Tic Tac Toe 游戏的重置按钮(按钮弹出但不起作用)

android - 缺少 HERE SDK 库。 gnuSTL_shared

javascript - addEventListener 的 Onclick 事件不起作用

javascript - 如何使用discord.js获取用户当前的语音 channel ?

javascript - 获取要传递给 POST 的选择值

Javascript API - 使用 ZoomLevel 调用 nokia.maps.map.Display 会导致 map 容器 div 填充整个页面

javascript - 如何防止其他人将我的应用 key 用于 HERE map

javascript - 如何将 id 绑定(bind)到 PrimeNg 菜单命令

javascript - Here Map - Javascript - 切换到夜间模式

here-api - Here Api TPEGOpenLRBase64 Code 有解码器吗?