1 javascript на странице может получить три типа измерения
- a) размер экрана, может быть получен по window.sreen.width и height;
- b) размер окна,можно выбрать через window.outerWidth и outerHeight;
- c) просмотреть размер порта, можно выбрать через window.innerWidth и innerHeight;
Теперь я просто хочу установить их на разныеразмеры.
2 Способы, которые я попробовал
Предположим, что размер моего рабочего стола составляет 1920x1080, я хочу установить размер экрана для кукловода 1280x720, размер окна 1280x680 и размер просмотра 1280x609.
a) Просто вызовите page.setViewport ({ширина: 1280, высота: 720});
Размер экрана, полученный с помощью js на странице, составляет 1920x1080. (setViewPort не влияет на размер экрана).
b) Вызовите page.setViewport ({ширина: 1280, высота: 720, isMobile: true});
Все размеры экрана, окна и вида установлены на 1280x720.
c) Передайте 'window-size = 1280x680' в puppeteer.launch (), затем вызовите page.setViewport ({ширина: 1280, высота: 609}):
Правильный размер окна (1280x680) и размер порта просмотра (1280x609) получены, но размер экрана по-прежнему является размером экрана устройства отображения (1920x1080), но ожидается 1280x720.
Код js:
cfgs = {headless: false, userDataDir: './userdata'};
cfgs.args = ['--window-size=' + winWidth +',' + winHeight];
const browser = await puppeteer.launch(cfgs);
var pages = await browser.pages();
var page = pages[0];
await page.setViewport({width:viewWidth, height:viewHeight});
await page.goto('xxx');
3 То, что я ожидаю
Кажется
- a) если isMobile = true установлен для setViewport, все размеры идентичны.
- b) если isMobile = true не установлен, размер экрана является фактическим размером экрана.
Кто-нибудь подскажет, как установить размер экрана отдельно от размера просмотра?