苹果设备上的触摸事件

Posted

技术标签:

【中文标题】苹果设备上的触摸事件【英文标题】:touch events on apple devices 【发布时间】:2016-09-29 10:58:45 【问题描述】:

我使用一些第三方软件从 PDF 创建交互式书籍。我可以看到它是如何工作的,但不确定是否让移动/平板电脑版本与在 Apple 设备上工作的链接完美配合..

初始 PDF 包含在其中创建的链接(在 Acrobat 中完成),然后导入 PDF 并创建 Web 版本。 它为这些链接创建的结果 javascript 如下..

var pageEditor = [[], [], [], [], [], [], [], [],
[
      annotype: "com.mobiano.flipbook.pageeditor.TAnnoLink",
      action: 
        triggerEventType: "mouseDown",
        actionType: "com.mobiano.flipbook.pageeditor.TAnnoActionOpenURL",
        url: "http://www.canal30apartments.com/360/viewer/mezz-lower.html"
      ,
      location:  x: "0.085024", y: "0.067632", width: "0.184540", height: "0.180675" 
    ,
    
      annotype: "com.mobiano.flipbook.pageeditor.TAnnoLink",
      action: 
        triggerEventType: "mouseDown",
        actionType: "com.mobiano.flipbook.pageeditor.TAnnoActionOpenURL",
        url: "http://www.canal30apartments.com/360/viewer/mezz-upper.html"
      ,
      location:  x: "0.764247", y: "0.694682", width: "0.174878", height: "0.180676" 
    ],
[
    annotype: "com.mobiano.flipbook.pageeditor.TAnnoLink",
    action: 
      triggerEventType: "mouseDown",
      actionType: "com.mobiano.flipbook.pageeditor.TAnnoActionOpenURL",
      url: "http://www.canal30apartments.com/360/viewer/standard.html"
    ,
    location:  x: "0.759417", y: "0.556518", width: "0.184540", height: "0.182609" 
  ],
[], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []];

mousedown 事件适用于三星设备,但似乎不适用于 Apple 设备。我很想知道为什么会发生这种情况,但主要是我想问是否有人可以帮助解决如何更改代码以捕获苹果设备(如果有办法)?

我能想到的只有..

triggerEventType:"touchstart"

谢谢

【问题讨论】:

【参考方案1】:

试试touchend事件, 它可能适用于纯 JS,因为我在 Backbone.js 中使用它 它在Backbone.js 中完美运行

【讨论】:

谢谢,但在这种情况下,triggerEventType:"touchend" 无法在任何移动设备上运行

以上是关于苹果设备上的触摸事件的主要内容,如果未能解决你的问题,请参考以下文章

如何控制 UIWebView 上的触摸? (苹果手机)

无法在 Android 设备上的 Javascript 中获取触摸事件的坐标

使用移动设备的触摸事件模拟拖放事件

触屏设备触摸事件实验和记录

触摸事件

iOS触摸事件深度解析-备用