javascript - 如何停止在覆盖谷歌地图上传播触摸事件

标签 javascript google-maps

您可以找到代码here .我尝试了全局和本地事件

event.preventDefault()
event.stopPropagation()
event.returnValue = false
event.cancelBubble = true;

上面的代码对于鼠标点击事件工作正常,但对于触摸事件 map 仍然接收点击事件。

最佳答案

你可以给touchend事件添加一个监听器,这样你就可以停止这个事件的传播:

  google.maps.event.addDomListener(div, "click", function(e) {
      console.log("over click");
      e.preventDefault();
      e.stopPropagation();
      clickOverlay();
  })

  google.maps.event.addDomListener(div, "touchend", function(e) {
      console.log("over touchend");
      e.preventDefault();
      e.stopPropagation();
      clickOverlay();
  })

这是您更新的 fiddle :https://jsfiddle.net/beaver71/xx1ycd7L/

关于javascript - 如何停止在覆盖谷歌地图上传播触摸事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39328251/

相关文章:

google-maps - 移动Safari崩溃(内存不足)

javascript - 在 JSON 数组中回显变量

javascript - 为什么数据没有显示在react-bootstrap-table中?

javascript - 如何根据该行中的第一个字符将文本区域元素的每一行向左或向右对齐?

javascript - VueJS Google 放置自动完成功能

python - 是否可以使用 Jupyter Notebooks 禁用/隐藏 gmap 中的控件?

javascript - 通过右键单击、Applescript 和/或 Javascript 访问浏览器中的链接?

javascript - 从日期选择器获取日期

c# - 如何填写 Google Geocoding API 返回的 TextBox

java - Android 获取当前位置失败