javascript - 单击带有交互式 map /区域的图像

标签 javascript html css

我有一个透明的 PNG,想要使用 maparea 元素捕获点击。因为我需要透明部分下方的区域也可单击,所以我执行了以下操作:

img{
  position: relative;
  pointer-events: none;
}
map, area{
  pointer-events: auto;
}

但是,这使得浏览器也会忽略关联 map 上的指针事件。我该如何解决这个问题?

https://codepen.io/kslstn/full/jYZVmV

请注意,在 Codepen 中,图像不是透明的,但我注意到与透明图像没有区别。

背景:我正在制作一个 3D 平面图,其中地板形状为非矩形。 Here's an example矩形地板的设置。

最佳答案

也许我没有看到全貌,因为您的代码片段与您的示例不同,但是,您是否尝试过:而不是使用 map 标记:

  • 使用图像上的点击事件;

  • 向图像添加“a”标签包装并在其上使用点击事件;

  • 在事件中添加一个空的“a”标签并对其进行样式设置:

    显示: block ; position:absolute; 宽度:100%; 高度:100%; 顶部:0; 左:0; z 索引:1;

    *你的“楼层”应该与此相关

关于javascript - 单击带有交互式 map /区域的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48165481/

相关文章:

html - 如何防止 headline 和 span 元素之间的换行符?

javascript - jQuery 绘制和修改线条和位置

html - 如何在没有来源的情况下删除图像周围的边框?

javascript - 更改元素的类 onkeyup

javascript - TypeError : Cannot read property 'map' of undefined. 找不到解决办法

javascript - 使用 javascript 移动 Div 框

javascript - 浏览器遇到 <script type= text/template ..> 会做什么

javascript - jQuery 怎么看起来既是一个对象又是一个对象调用的方法呢?

javascript - 内容和条件的屏幕宽度问题

jquery - 如何在将其更改为图像之前不显示数字? (jQuery 计数器)