Document location new windows

Location

Интерфейс Location представляет собой адрес (URL) объекта, с которым он связан. Его модификации отражаются на родительском объекте. Интерфейсы Document и Window имеют подобный Location , к которому можно получить доступ через Document.location и Window.location соответственно.

Свойства

Интерфейс Location не имеет унаследованных свойств, но реализует свойства URLUtils .

Location.href (en-US) DOMString , содержащий URL целиком. При изменении, соответствующий документ переходит на новую страницу. Location.protocol (en-US) DOMString , содержащий протокол текущего URL, включая ‘:’ . Location.host (en-US) DOMString , содержащий хост, а именно имя хоста, ‘:’ и порт. Location.hostname (en-US) DOMString , содержащий домен текущего URL. Location.port (en-US) DOMString , содержащий номер порта текущего URL. Location.pathname (en-US) DOMString , содержащий первый ‘/’ после хоста с последующим текстом URL. Location.search (en-US) DOMString , содержащий ‘?’ с последующими параметрами URL. Location.hash (en-US) DOMString , содержащий ‘#’ с последующим идентификатором. Location.username (en-US) DOMString , содержащий имя пользователя, указанное перед именем домена. Location.password (en-US) DOMString , содержащий пароль, указанный перед именем домена. Location.origin (en-US) Только для чтения Возвращает DOMString , содержащий протокол, хост и порт текущего URL.

Методы

Интерфейс Location не имеет унаследованных методов, но реализует методы URLUtils .

Открытие окон и методы window

Материал на этой странице устарел, поэтому скрыт из оглавления сайта.

Более новая информация по этой теме находится на странице https://learn.javascript.ru/popup-windows.

Всплывающее окно («попап» – от англ. Popup window) – один из старейших способов показать пользователю ещё один документ.

В этой статье мы рассмотрим открытие окон и ряд тонких моментов, которые с этим связаны.

…При запуске откроется новое окно с указанным URL.

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

Блокировщик всплывающих окон

Рекламные попапы очень надоели посетителям, аж со времён 20-го века, поэтому современные браузеры всплывающие окна обычно блокируют. При этом пользователь, конечно, может изменить настройки блокирования для конкретного сайта.

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

Как же браузер понимает – посетитель вызвал открытие окна или нет?

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

А если код был на странице и выполнился автоматически при её загрузке – у него этого флага не будет. Попапы будут заблокированы.

Полный синтаксис window.open

Функция возвращает ссылку на объект window нового окна, либо null , если окно было заблокировано браузером.

Читайте также:  Windows hosting free trial

url URL для загрузки в новое окно. name Имя нового окна. Может быть использовано в параметре target в формах. Если позднее вызвать window.open() с тем же именем, то браузеры (кроме IE) заменяют существующее окно на новое. params Строка с конфигурацией для нового окна. Состоит из параметров, перечисленных через запятую. Пробелов в ней быть не должно.

Значения параметров params .

  1. Настройки расположения окна:

left/top (число)

Координаты верхнего левого угла относительно экрана. Ограничение: новое окно не может быть позиционировано за пределами экрана.

Ширина/высота нового окна. Минимальные значения ограничены, так что невозможно создать невидимое окно с нулевыми размерами.

Если координаты и размеры не указаны, то обычно браузер открывает не окно, а новую вкладку.

  1. Свойства окна:

menubar (yes/no) Скрыть или показать строку меню браузера. toolbar (yes/no) Показать или скрыть панель навигации браузера (кнопки назад, вперёд, обновить страницу и остальные) в новом окне. location (yes/no) Показать/скрыть поле URL-адреса в новом окне. По умолчанию Firefox и IE не позволяют скрывать строку адреса. status (yes/no) Показать или скрыть строку состояния. С другой стороны, браузер может в принудительном порядке показать строку состояния. resizable (yes/no) Позволяет отключить возможность изменять размеры нового окна. Значение no обычно неудобно посетителям. scrollbars (yes/no) Разрешает убрать полосы прокрутки для нового окна. Значение no обычно неудобно посетителям.

  1. Ещё есть небольшое количество не кросс-браузерных свойств, которые обычно не используются. Вы можете узнать о них в документации, например MDN: window.open.

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

  • Если при вызове open указан только первый параметр, параметр отсутствует, то используются параметры по умолчанию. Обычно при этом будет открыто не окно, а вкладка, что зачастую более удобно.
  • Если указана строка с параметрами, но некоторые yes/no параметры отсутствуют, то браузер выставляет их в no . Поэтому убедитесь, что все нужные вам параметры выставлены в yes .
  • Когда не указан top/left , то браузер откроет окно с небольшим смещением относительно левого верхнего угла последнего открытого окна.
  • Если не указаны width/height , новое окно будет такого же размера, как последнее открытое.

Доступ к новому окну

Вызов window.open возвращает ссылку на новое окно. Она может быть использована для манипуляции свойствами окна, изменения URL, доступа к его переменным и т.п.

В примере ниже мы заполняем новое окно содержимым целиком из JavaScript:

Window.location

Свойство только для чтения Window.location возвращает объект Location с информацией о текущем расположении документа.

Хотя Window.location представляет собой объект только для чтения Location , вы можете присвоить ему DOMString . Это значит что в большинстве случаев вы можете работать с location как со строкой: location = ‘http://www.example.com’ это синоним для location.href = ‘http://www.example.com’ .

Синтаксис

Примеры

Базовый пример

Пример №1: Переход на новую страницу

Каждый раз, когда объекту location присвоено новое значение, документ будет загружен используя URL как если бы был вызван location.assign() с изменённым URL. Отметим, что настройки безопасности, подобные CORS, могут препятствовать этому эффекту.

Пример №2: Принудительная перезагрузка текущей страницы с сервера

Пример №3

Рассмотрим следующий пример, который будет перезагружать страницу используя метод replace() для вставки значения location.pathname в хэш:

Читайте также:  Windows или novell netware

Пример №4: Отображение свойств текущего URL в диалоге alert

Пример №5: Отправка строки данных на сервер через изменение свойства search

Текущий URL с добавлением «?Some%20data» отправляется на сервер (если сервером не предпринимается никаких действий, то текущий документ перезагружается за счёт изменения строки search).

Пример №6: Использование закладок без изменения свойства hash

…тоже самое только с анимированной прокруткой страницы:

Форум

Справочник

window.location

Получает/устанавливает URL окна и его компоненты

Описание, примеры

Значением этого свойства является объект типа Location .

Объект Location

Метод toString этого объекта возвращает URL, а различные свойства позволяют получить/установить отдельные компоненты адреса.

Для некоторых строковых операций необходимо явно преобразовать Location к строке:

Свойства объекта Location

Все следующие свойства являются строками.
Колонка «Пример» содержит их значения для URL:

  • http://www.google.com:80/search?q=javascript#test
Свойство Описание Пример
hash часть URL, которая идет после символа решетки ‘#’, включая символ ‘#’ #test
host хост и порт www.google.com:80
href весь URL http://www.google.com:80/search?q=javascript#test
hostname хост (без порта) www.google.com
pathname

строка пути (относительно хоста) /search
port номер порта 80
protocol протокол http:
search часть адреса после символа ?, включая символ ? ?q=javascript

В Firefox есть баг: если hash -компонент адреса содержит закодированные (см. encodeURIComponent) символы, свойство hash возвращает раскодированный компонент. Например, вместо %20 будет пробел и т.п. Другие браузеры ведут себя корректно и не раскодируют hash .

Методы объекта Location

При изменении любых свойств window.location , кроме hash , документ будет перезагружен, как если бы для модифицированного url был вызван метод window.location.assign() .

При вызове sendData(‘My Data’) на сервер отправится строка
с параметрами «?My%20Data».

Как можно получить параметр из URl? Только в ручную разбирая search

А еще пробежаться по массиву, разбить его элементы по ‘=’ и составить хеш. Будет вообще замечательно.

кстати объект document тоже содержит в себе ссылку на объект location.

Кто знает как запретить чужому сайту из фрейма трогать location.
Если кто не понял, в чем дело, попробуйте Яндекс во фрейм положить.

vkontakte также закрыт..

вот чтобы не воровали контент чужих страниц клиентом — так и сделано

Вконтакте hash находиться в объекте flashVars.

Существует ли простой способ разбора параметров location.search ?
То есть функция, я ей — параметр, она мне — его значение.

Если стандартной такой функции не существует, то наверняка уже кто-то писал такую функцию. Чего мне велосипед то изобретать? Поделитесь, пожалуйста.

Запускаем функцию (например: «window.onLoad = parseGET;») — получаем массив get[_параметр_]=_значение_.

Только вот ты забыл, что в JS нету ассоциативных массивов и вот эта строка
get[tmp2[0]] = tmp2[1];
не имеет смысла до тех пор, пока она
get = new Array();

Рабочая версия (возвращает объект)

По секрету. Ассоциативные массивы в JS есть. И, что доставляет, это — одная из важнейших его частей.

Кхм, и называется оно «Объект»? ) В js нет ассоциативного массива, по крайней мере в таком виде, чтобы инстанс некоего типа имел возможность присваивания своим именованным свойствам неких значений и при этом сохранял возможности «массива», которые являются привычными и устоявшимися (конкатенация массивов, сортировка по ключу/значению и прочее). Объект — хеш — назвать ассоциативным массивом ввиду отсутствия нативных «массивных» возможностей можно с натяжкой. Принимая во внимание тот факт, что в спеке ECMA-262 ни разу не встречается словосочетание «associative array» или слово «hash». Это народные обзывательства, реально же в js ассоциативных массивов нет в должном привычном объёме.

а как cделать так,чтобы location.href=cсылка , загружало ссылку в определенный фрейм (то есть target)?

как в a.js понять какой query ему отдали, ибо location.search — содержит есессно query основной страницы, и не подходит?

Добавь скрипту ID, потом через document.getElementById получи объект..

Преобразуй строку в объект и работай дальше..
Для примера создана вторая функция — print_r, чтобы проверит результат..

ну а как содержимое скрипта получить ? плачу 5баксов кто покажет . jipik(a)bk.ru

имется виду внешний скрипт

Испробовал вот такой «лобовой» вариант

так вот myhash.length возвращает 0 и при отсутствии хэша, и при варианте site.com/# и при варианте site.com/page.html# — и НЕ ЧИСТИТ этот чертов завершающий #

результат аналогичный: site.com/# решетка гордо в URL

Решением оказался вот такой ход:

Теперь завершающий пустой хэш остается только, если вызывается та же самая страница, то есть без перехода на новый URL (например, на ссылке «Домой» остался такой аппендикс).

Для простого получения адреса текущей, обобразится на экране, стрницы —

document.write(location ); // получить адрес текущей страницы

У меня с некоторых компов значение document.location.hostname == null.
Это при первой загрузке страницы, если страницу обновить, то встает нормальное значение, но скрипт-то отрабатывается в первый раз.
Из-за чего такое может быть?

Здравствуйте. Помогите, пожалуйста. Никак не могу сообразить. Мне надо, чтобы по нажатию кнопки шел просчитывались данные и шел переход на другую страницу. У меня переходит на другую страницу, но берет устаревшую из кэша, для просмотра обновленных данных приходится перезагружать страницу вручную. А можно как-нибудь переходить сразу на обновленную страницу или сделать последовательно: сначала переход на другую страницу, а потом её автоматическое обновление?

Выше спрашивали: » У меня переходит на другую страницу, но берет устаревшую из кэша, для просмотра обновленных данных приходится перезагружать страницу вручную. А можно как-нибудь переходить сразу на обновленную страницу или сделать последовательно: сначала переход на другую страницу, а потом её автоматическое обновление?»
mario games

Великие посты! Я на самом деле готовлюсь через эту информацию, очень полезен мой друг. happy wheels

Всем привет.
У меня есть аудио поток m3u и когда переключаешься с wifi на 3g он прекращается и выдает ошибку:
Failed to load resource: net::ERR_NETWORK_CHANGED

Можно ли как то скриптом чекать эту ошибку и если она есть то перезагружать не страницу а область () ?

Link exchange is nothing else however it is simply placing the other person’s website pokemon masters cheats link on your page at proper place and other person will also do same in favor of you.

Живопись фотографии бесплатно, цветные шаблоны страниц и пустые картинки включают в себя большую коллекцию для раскрашивания. Надежные и высококачественные цветовые шаблоны

Читайте также:  Обход блокировки для windows phone
Оцените статью