Как программно создать TouchEvent Zoom в Chrome 69? - PullRequest
0 голосов
/ 09 октября 2018

Я пытаюсь увеличить изображение программно.https://jsbin.com/zaxogifino/1/edit?js,console,output

Как создать событие увеличения?Я пытался

myElement = document.querySelector('#g2');
sendTouchEvent(247, 379, myElement, 'touchstart');
sendTouchEvent(317, 591, myElement, 'touchstart');

sendTouchEvent(257, 389, myElement, 'touchmove');
sendTouchEvent(307, 581, myElement, 'touchmove');

sendTouchEvent(267, 399, myElement, 'touchmove');
sendTouchEvent(297, 571, myElement, 'touchmove');

, но он не работает.

function sendTouchEvent(x, y, element, eventType) {
  const touchObj = new Touch({
    identifier: Date.now(),
    target: element,
    clientX: x,
    clientY: y,
    pageX: x,
    pageY: y,
    screenX: x,
    screenY: y,
    radiusX: 25,
    radiusY: 25,
    rotationAngle: 0,
    force: 0.5,
  });

  const touchEvent = new TouchEvent(eventType, {
    cancelable: true,
    bubbles: true,
    touches: [touchObj],
    targetTouches: [],
    changedTouches: [touchObj],
    shiftKey: true,
  });

  element.dispatchEvent(touchEvent);
}
...