使用 puppeteer 动态更改元素样式

Pet*_*ran 4 javascript puppeteer

我正在尝试获取一个元素并使用 puppeteer 设置其字体大小

    const browser = await puppeteer.launch({args: ['--no-sandbox', '--disable-setuid-sandbox']});
    const page = await browser.newPage();
    const html = `<html></html><body style="width:2000">
                  <span class="text">${text}</span>
                  </body></html>`
    await page.setContent(html)
    await page.waitForSelector('.text');
    let textContent = await page.$('.text')
    textContent.style.fontSize = 150 + 'px'
Run Code Online (Sandbox Code Playgroud)

这给了我一个错误,是否有可能实现我想要的目标?

小智 6

在这种情况下,请使用ElementHandle.evaluate(fn)。所以你应该这样做

let textContent = await page.$('.text');
await textContent.evaluate((el) => el.style.fontSize = 150 + 'px');
Run Code Online (Sandbox Code Playgroud)