Window.resizeTo влияет на последующие окна Firefox

У меня есть веб-приложение, которое изменяет размер своего окна, чтобы оно точно соответствовало его содержимому:

window.resizeTo(200,300)

Людям нравится, когда страница соответствует размеру окна таким образом. Однако в Firefox следующее окно браузера, которое открывает пользователь, имеет тот же размер, что до смешного мало.

Есть ли способ указать Firefox изменить размер текущего окна, но не изменить его представление о том, насколько большими должны быть последующие окна?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
3
0
2 923
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

People do like having the page fit its window in this way.

Который народ ?! Я был бы серьезно раздражен, если бы веб-страница изменила размер окна моего браузера. К счастью, FF также позволяет пользователям отключать перемещение или изменение размера существующих окон - функция, которой я пользуюсь уже несколько лет.

Вы должны иметь возможность открывать окно новый определенного размера с помощью window.open, чтобы вы могли использовать это ... или еще лучше, просто разрешите вашему документу изменять размер / перекомпоновку, чтобы он соответствовал любому размеру окна, который предпочитает пользователь.

какие люди == мой менеджер по продукту, что является преобладающим мнением.

DGentry 09.10.2008 01:53

: shrug: ну ты с этим разобрался. Однако имейте в виду, что со временем эта функция, скорее всего, получит не полную поддержку.

Shog9 09.10.2008 01:57

Я полагаю, если вы опросите всю базу пользователей stackoverflow, вы обнаружите, что большинство из них будут серьезно раздражены тем, что веб-сайты изменяют размер окон браузера без разрешения.

different 10.10.2008 13:59
Ответ принят как подходящий

Здесь работают два разных вопроса:

1. Указание размеров окна-

Указание атрибутов окна с помощью window.open не повлияет на размеры других окон. Вы получаете ожидаемое поведение от Firefox в отношении функции resizeTo.

2. Пользовательский опыт-

В первую очередь пользователи ценят поддержание контроля своей среды и вашего продукта. Важно разрешить им изменять размер окон своего браузера. Браузер - это приложение на настольном компьютере, и большинство оконных операционных систем предоставляют пользователю общий контроль над размером и размещением окон. Управление размером окна - это шаг в их личное рабочее пространство.

Я согласен с @ Shog9, что вам следует пересмотреть свое использование window.resizeTo .. Вероятно, это не подходит для заставить окно для любого конкретного размера, за исключением, возможно, случая выскакивать. Использование Жидкие макеты может помочь вам достичь приемлемого дизайн для любого разумного размера окна.

Ага, у меня есть сайт погоды, который делает это: пытается создать всплывающее окно (которое заканчивается новой вкладкой) и изменять его размер (таким образом, изменяя размер всего браузера Firefox!).

Не нужно говорить, что я это ненавижу.

Некоторые всплывающие окна блокируются, другие отображаются как всплывающие окна, другие переходят на новую вкладку. Это зависит от метода их создания и настроек браузера / расширений. Практически невозможно контролировать, тем более кроссбраузерным способом.

Современный способ (все еще очень раздражающий для рекламы!) - это делать наложения div, немного менее навязчиво. Конечно, это может удовлетворить не все потребности.

Единственный способ сделать это как один из уже упомянутых плакатов - установить ширину и высоту при открытии нового всплывающего окна с помощью window.open - window.open ('http://www.google.com', 'Test', 'width = 800, height = 800' ); Window.resizeTo никогда не работал в Firefox по каким-либо причинам, политическим или техническим. И, по-видимому, разработчикам Firefox удалось сломать window.open () в Firefox 3.01, обратитесь к этому сообщению в блоге - http://tough-to-find.blogspot.com/2008/07/firefox-301-breaks-windowopen-width.html

Просто хочу добавить, что лучше всего избегать использования window.open и использовать вместо него какой-то фреймворк LightWindow - гораздо приятнее, ведет себя одинаково во всех браузерах и не зависит от параметров браузера. Вы можете увидеть здесь образец фреймворка http://www.stickmanlabs.com/lightwindow/

Полностью согласен с тем, что почти во всех случаях сайты, которые изменяют размер области просмотра, полностью отстой.

Размер окна приложения должен решать пользователь, а не владельцы веб-сайтов.

В очень редких случаях может быть хороший аргумент в пользу этого, или клиент может просто настоять на этом, потому что «они знают лучше», но это всегда отстой.

Это очень неприятно для большинства пользователей, особенно когда у вас открыто 17 вкладок шириной 1600 пикселей, и какой-то дизайнер печати постановил, что следующая открываемая вами вкладка должна заставить все остальные открываться шириной 300 пикселей.

Гораздо удобнее использовать методы вроде толстого / светлого / серого / тонкого ящика.

Я просто нахожу альтернативные веб-сайты или запускаю сценарий greasemonkey, чтобы сайты не делали этого.

Просто пришлось разглагольствовать об этом. Извиняюсь.

Вот некоторая информация, которая может помочь пользователям прочитать этот пост.

На Firefox оказали давление, чтобы удалить поддержку window.resizeTo, и, похоже, на короткое время это произошло. Видеть http://kb.mozillazine.org/Resizing_oversize_window#JavaScript_no_longer_allowed_to_resize_windows

Вы можете отключить изменение размера окна в Firefox: http://www.howtogeek.com/howto/internet/firefox/disable-web-site-window-resizing-in-firefox/

Если вы включили изменение размера окна JavaScript, но оно по-прежнему не работает, возможно, у вас установлен Firebug. Отключите Firebug и перезапустите Firefox, и window.resizeTo снова заработает. Смотрите здесь: https://bugzilla.mozilla.org/show_bug.cgi?id=565541#c47

Что касается того, должно ли происходить изменение размера окна, я не могу придумать много случаев, но я знаю один, поэтому я поделюсь им. Я кодирую окно справки с дополнительной панелью навигации. У меня есть кнопка, которая позволяет пользователям отображать / скрывать панель навигации. Когда они это показывают, я изменяю размер окна, чтобы освободить место для панели навигации. В этом случае он инициируется пользователем, поэтому он не раздражает пользователей. Однако отключение resizeTo сделает это невозможным и, таким образом, ухудшит взаимодействие с пользователем (в данном случае). В большинстве случаев это сводится к тому, что большинство инструментов можно использовать как во благо, так и во вред. Чем внимательнее люди, тем меньше проблем с крутыми инструментами.

Другие вопросы по теме