jun-dev
@jun-dev
Ищу подработку, делаю дешево и на совесть.

Изменение значений разрешения экрана через JavaScript?

Добрый день, товарищи.
Есть желание сменить разрешение своего экрана, так как некоторые сайты отображаются неправильно, пытаясь подстроится под мой экран. Стоит отметить, что у меня не стандартный монитор, речь идёт о китайском широкоформатном "ноунейме", который в ширину имеет 2300 пикселей.
Решил с помощью юзерскрипта на JavaScript решить этот вопрос. Для этого, путём гугления, на просторах интернета был найден код, который я изменил под себя:
var newOW = function () {
  return 1920; //
};
if (Object.defineProperty) {
  Object.defineProperty(document.documentElement, "offsetWidth", {
    get: newOW
  });
} else if (Object.prototype.__defineGetter__) {
  document.documentElement.__defineGetter__("offsetWidth", newOW);
}
var newOH = function () {
  return 1080;
};
if (Object.defineProperty) {
  Object.defineProperty(document.documentElement, "offsetHeight", {
    get: newOH
  });
} else if (Object.prototype.__defineGetter__) {
  document.documentElement.__defineGetter__("offsetHeight", newOH);
}

Этот скрипт поместил первым, на каждую страницу нужного мне сайта. К сожелению, при тестировании на тестовой странице, это свойство изменилось странным образом. В консоли, при наборе параметра, он отображается так, как я задал его в своём скрипте, но на самой странице, он возвращает старое значение. Для примера, решил временно изменить юзерагент, он поменялся.
Что я делаю не так?
  • Вопрос задан
  • 306 просмотров
Пригласить эксперта
Ответы на вопрос 1
vetero4eg
@vetero4eg
Frontend
Вы хотите разрешение экрана поменять или сделать так, чтобы вне зависимости от вашего разрешения вам показывалась версия сайта под 1920х1080? Первая задача - не реализуема. Браузер не имеет доступа к системным настройкам разрешения вашего экрана.
Если говорить о второй задаче, вероятно вам нужно работать не с offsetWidth/Height а с clientWidth/Height
И сильно сомневаюсь что вам нужно именно у document.documentElement все это менять. Но так как не до конца понимаю, что вы делаете вообще, утверждать трудно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы