iOS / Phonegap:程序化触摸事件无法到达iframe

时间:2016-05-07 16:35:52

标签: javascript ios cordova iframe

在我的Phonegap应用程序(我在iPad Air上测试)中,我需要在iframe的元素上激活程序化事件。我试过了:

var el = frame.contentDocument.getElementById("existingId");

if (el)
{
  var touches = frame.contentDocument.createTouchList();
  var event = frame.contentDocument.createEvent('TouchEvent');

  if (event.initUIEvent)
  {
    event.initUIEvent(
      'touchstart',                // {String}    type
      true,                 // {Boolean}   canBubble
      true,                 // {Boolean}   cancelable
      frame.contentWindow, // {Window}    view
      1,                    // {Number}    detail
      0,                    // {Number}    screenX
      0,                    // {Number}    screenY
      0,                    // {Number}    clientX
      0,                    // {Number}    clientY
      false,                // {Boolean}   ctrlKey
      false,                // {Boolean}   altKey
      false,                // {Boolean}   shiftKey
      false,                // {Boolean}   metaKey
      touches,              // {TouchList} touches
      touches,              // {TouchList} targetTouches
      touches,              // {TouchList} changedTouches
      0,                    // {Number}    scale(0 - 1)
      0                     // {Number}    rotation
    );

    event.target = el;

    el.dispatchEvent(event);
  }
}

但这段代码什么都没有;事件被调度,但是id ='existingId'的框架中的元素没有收到touchstart事件。

我做错了什么?提前谢谢。

0 个答案:

没有答案