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);
}

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

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

Похожие вопросы