2008-10-08 2 views
3

У меня есть веб-приложение, которое изменяет размер окна его точно соответствовать его содержимое:window.resizeTo влияет на последующие окна Firefox

window.resizeTo(200,300) 

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

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

ответ

4

Две разные вопросы на работе здесь:

1. Указание окна Dimensions-

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

2. Пользователь

опыт-

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

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

4

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

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

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

+0

которые люди == мой менеджер продукта, который поэтому преобладает мнение. – DGentry 2008-10-08 21:53:14

2

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

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

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

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

1

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

2

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

2

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

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

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

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

Это гораздо удобнее использовать что-то вроде толстых/светлых/серых/тонких меток.

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

Просто нужно было об этом говорить. Сожалею.

0

Вот некоторые сведения, которые могут помочь пользователям прочитать это сообщение.

У 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 сделает невозможным и, таким образом, уменьшит пользовательский интерфейс (в данном случае). В большинстве случаев это сводится к тому, что большинство инструментов можно использовать для хорошего или плохого. Чем более внимательны люди, тем меньше проблем с крутыми инструментами.