我有一个绝对定位的 div,它的父相对定位如下:
<div class="panoramic-go-right"></div>
.panoramic-go-right {
background-color: blue;
height: 100px;
width: 100px;
margin-top: -50px;
position: absolute;
right: 0;
top: 50%;
z-index: 1000;
}
我正在向它的 touchstart 事件及其父事件添加代码,如下所示:
$('.panoramic-go-right').parent()[0].addEventListener("touchstart", function (e) {
alert('c');
e.stopPropagation();
e.preventDefault();
return false;
});
$('.panoramic-go-right')[0].addEventListener("touchstart", function (e) {
alert('d');
e.stopPropagation();
e.preventDefault();
return false;
});
问题是当我在运行 iOS 7.1.2(Chrome 和 Safari)的 iPhone 4 上触摸该元素时,会显示“c”。
在物理 Android 手机 (Chrome)、运行 iOS 9.2 (Safari) 的模拟 iPhone 4s 和物理 iPhone 6+ (Safari) 上,代码可以正常工作并显示“d”。
有人可以帮我解释为什么 iPhone 4 (iOS 7.1.2) 将触摸发送给父母而不是孩子。谢谢!