【发布时间】:2023-01-12 07:45:48
【问题描述】:
所以我有一个网页,只要你点击一张图片,它就会以更大的形式显示。
代码简单(省略其余代码)
open_image.addEventListener("click", () => open_image());
<div id="click-me">
<img src="img_test.jpg">
</div>
<div id="bigger-img" style="display: none">
<img src="img_test.jpg">
</div>
open_image() 函数所做的只是将显示块设置为隐藏图像
这在 PC 和安卓设备上没有问题,但对于 iPad 或 iPhone 等苹果移动设备,点击事件似乎没有被监听或者就像它忽略它一样。
我已经搜索了解决方案,似乎在 CSS 中,属性 cursor: pointer 应该可以工作,但对我来说不是,在将此属性设置为 body 后一直忽略点击事件。
这些苹果设备有什么想法吗?
【问题讨论】:
-
您不想改用 pointer event 吗?它适用于鼠标、笔和触摸事件。见:"The HTML5 Pointer Events API: Combining touch, mouse, and pen"
-
您确定不会触发点击事件吗?对我来说,这听起来像是一个 CSS 问题
-
请发布minimal reproducible example。您可以使用 Stack Snippet 使其可执行。
-
只需执行
open_image.addEventListener("click", () => aleret(1));来检查它是否触发,css 与 onclick 事件无关,cursor: pointer会影响当您将鼠标悬停在元素上时呈现的桌面光标 - 如果将其添加到正文中,您将拥有整个光标pointer (hand)网站 -
单击事件在苹果移动设备中正确触发,我将尝试指针事件
标签: javascript html css ios events