Puppeteer: Em page.emulate(opção), opção. temTouch não trabalhador

Criado em 18 out. 2017  ·  3Comentários  ·  Fonte: puppeteer/puppeteer

Passos para reproduzir

Conte-nos sobre o seu ambiente:

Quais passos vão reproduzir o problema?

_Inclua o código que reproduz o problema._

  1. prepare a demonstração como abaixo:
const puppeteer = require('puppeteer');
const devices = require('puppeteer/DeviceDescriptors');
const browser = await puppeteer.launch({headless: false});
  const page = await browser.newPage();
  await page.emulate(devices['iPad landscape']);
  await page.goto(REDIRECT_URL);
  1. interagir com a página no chrome

Qual é o resultado esperado?
operações de toque funcionam

O que acontece em vez disso?
as operações de toque não funcionam

Comentários muito úteis

Isso deve funcionar.

const devtoolsProtocolClient = await page.target().createCDPSession();
await devtoolsProtocolClient.send("Emulation.setEmitTouchEventsForMouse", { enabled: true });

Todos 3 comentários

Emular um dispositivo de toque com o Puppeteer configura a página para que algo como modernizr detecte o suporte ao toque. Ele não converte cliques do mouse em eventos de toque. Você pode usar page.touchscreen para enviar toques automáticos na página.

Isso deve funcionar.

const devtoolsProtocolClient = await page.target().createCDPSession();
await devtoolsProtocolClient.send("Emulation.setEmitTouchEventsForMouse", { enabled: true });

@actionnick funcionou bem para mim, obrigado

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

kesava picture kesava  ·  3Comentários

mityok picture mityok  ·  3Comentários

sradu picture sradu  ·  3Comentários

ryanvincent29 picture ryanvincent29  ·  3Comentários

MehdiRaash picture MehdiRaash  ·  3Comentários