Click事件侦听器在OSX中的Safari中工作,但在iOS中不工作

我正在创建一个Web应用程序,我想单击一个元素并在一个长按事件处理程序中处理单击。 我在Safari测试。 以下在我的Mac上的Safari中可以正常工作,但在iOS中则不行:

   window.addEventListener("click",function (event) { alert('hi'); });    

为什么这在Safari的OSX版本中有效,但在iOS中却没有?

尝试将事件监听器“click”更改为“click touchstart”

此代码应该跨浏览器工作:

 function Subscribe(event, element, func) { if (element.addEventListener) { element.addEventListener(event, func, false); } else if (element.attachEvent) { element.attachEvent("on" + event, func); } else { element['on' + event] = func; } } function func () { alert('hi'); } Subscribe('click', window, func); 

我找到了一个非常简单的解决方 我在示例代码中添加了另一个关于div元素的div(参见上面的问题)。 开场div标签是

 

此div标签内的所有div现在将触发click事件。 这也适用于touchstart。