Progress-servis55.ru

Новости из мира ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Javascript window close

Форум

Справочник

Поиск по форуму
Расширенный поиск
К странице.

Илья Кантор, 16 мая 2009 — 12:43

window.close

Синтаксис

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

Если закрываемое окно не было открыто при помощи window.open, то
при его закрытии выводится предупреждение. Посетитель может отклонить закрытие.

А как закрыть окно если открылось не через javascript ?

А также Но будет вопрос посетителю, хочет ли он закрыть окно.

function exit() <
var thisWindow = window.open(«Listing3.html»,’_self’);
var exit = confirm(«Хотите закрыть страницу?»);
if(exit) <
thisWindow.close();
>
>

Как из родительского окна можно передать фокус окну, открытому следующей командой?
w );
wname.focus()
wid.focus()
window.wid.focus()
window.wname.focus()
self.wid.focus()
помогите плиз.

а у меня не получается закрыть окно, которое открыто не скриптом.

window.close.php

js/window.js

Подскажите как закрыть страницу через javaScript

если вставить в страницу скрипт с window.close(); то ничего не происходит..

нежно что бы при открытии страницы она закрывалась скажем через 5 секунд.

Та же проблема. Не срабатывает window.close()

Для доступа к свойствам текущего окна используется self. Используйте self.close();

Почему-то window.close(), self.close(), this.close() работают только в Opera.

Если окно создано через фрейм на jquery. Много вопросов на форумах, как закрыть модальное окно из фрейма, обычно ответ один — никак. Но решение есть и оно аналогично плагину thickbox.

Просто навесить код на элемент находящийся внутри фрейма.

По работе стоит задача сделать кнопку закрытия окна браузера без вопроса «Действительно ли вы хотите закрыть. » Пробую сейчас для IE 8 — работает прекрасно. На IE 6 — нет. Где посмотреть какими версиями експлорера поддерживается эта функциональность и нет ли аналога для шестого?

Почему все так сложно?
Работать не возможно.
Почему нельзя все упростить?
Простые вещи через жопу делать надо. Невероятно. 21 век.

Дело в том, что все упирается в политику безопасности.

Если вы хотите сделать что-бы было просто, то будьте готовы, что у вас будут «самопроизвольно» (с помощью кода в баннере например) закрываться все вкладки.

Дело в том, что все упирается в политику безопасности.

Если вы хотите сделать что-бы было просто, то будьте готовы, что у вас будут «самопроизвольно» (с помощью кода в баннере например) закрываться все вкладки.

Всегда открывал окно примерно таким кодом:

function ShowWin(src, width, height) <
obj = window.open(«», «», «scrollbars=0,dialog=0,minimizable=1,modal=1,w ) ;
obj.document.write(» » ) ;
obj.document.write(» » ) ;
obj.document.write(» » ) ;
>

Потребовалось закрытие окна, при клике вне него. Нашел в и-нете такой код:

Добавил в свою функцию, последней строкой, т.е. получилось:

function ShowWin(src, width, height) <
obj = window.open(«», «», «scrollbars=0,dialog=0,minimizable=1,modal=1,w ) ;
obj.document.write(» » ) ;
obj.document.write(» » ) ;
obj.document.write(» » ) ;
this.onfocus=function()
>

Все работает, окно закрывается при клике «снаружи».
Не понимаю, почему ONFOCUS, а не ONBLUR?
Может, кто-нибудь пояснить? Помогите пожалуйста разобраться!

Окно закрывается при клике по родительскому окну. В вашем случае, вызов функции showWin происходит в «глобальном» контексте, и внутри функции this указывает на window. Соответственно в последней строчке вы задаете обработчик получения фокуса родительским окном, а внутри обработчика — закрываете дочернее окно (которое внутри обработчка представлено переменной obj)

это какая-то магия, но работает
вызванная без аргументов, функция закрывает текущее окно

function close_window(url) <
var newWindow = window.open(», ‘_self’, »); //open the current window
window.close(url);
>

ааааа. это же просто чит !

А может ко сможет мне помочь? Мне нужно, чтоб по нажатию «ОК» в диалоговом окне alert закрывалась браузерная вкладка

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

Если кто мучался с закрытием модольного окна, открытого через jquery, (Например:
highslide), то вот таблетка:

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

javascript:close() в ссылку и не парься

Есть ли способ закрыть текущую страницу в последнем chrome.
var newWindow = window.open(», ‘_self’, »); //open the current window
window.close();
Этот способ не работает.
В консоль падает warning Scripts may close only the windows that were opened by it.

Ребят, помогите.
Есть окно, из которого я открываю другое окно
var w = window.open(‘test2.html’, ‘MyWindow’);
во втором окне я делаю что надо, и жму кнопку закрыть
window.close();
как только эта страница закрывается через эту функцию, мне надо запустить скрипт на основной странице.
Как это отследить .

У меня работает только такой способ: self.close()

Доработал «читерский».
Пропишите следующего рода скрипт на закрываемую страницу.

И вызовите функцию DoCPExit();

Все успешно закрывается и без каких-либо подтверждений для пользователя.
Причем вызов функции можно настроить по времени истечения, например 5 секунд.

JavaScript — Объект window: открытие и закрытие окон

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

Методы объекта window: open() , close() , print() , focus() и blur() .

В этом разделе мы рассмотрим следующие методы объекта window :

  • open() — предназначен для открытия окон (вкладок);
  • close() — предназначен для закрытия окон. В основном используется для закрытия окон открытых методом open() ;
  • print() — предназначен для печати содержимого окна;
  • focus() — предназначен для передачи фокусу указанному окну;
  • blur() — предназначен для удаления фокуса с указанного окна.

Метод open() .

  • В первом параметре указывается URL страницы, которую необходимо загрузить в это окно. Если значение данного параметра не задавать, то в окне будет отображена пустая страница ( about:blank ).
  • Во втором параметре метода open указывается значение атрибута target или имя окна. Поддерживаются следующие значения:
    • _blank — URL загружается в новое окно (вкладку). Это значение используется по умолчанию;
    • _parent — URL загружается в родительский фрейм. Если его нет, то URL загружается в текущее окно (вкладку);
    • _self — URL загружается в текущее окно;
    • _top — отменяет все фреймы и загружает URL в текущее окно (вкладку) браузера. Если его нет, то URL загружается в текущее окно (вкладку);
    • В качестве параметра Вы также можете указать имя открываемого окна. Данное имя является внутренним и может использоваться веб-разработчиками для вызова функций и методов этого окна.
  • Третий параметр предназначен для указания набора свойств окна, которые вводятся через запятую. Поддерживаются следующие основные свойства окна:
    • left , top — координаты (в пикселях) левого верхнего угла окна браузера относительно левого верхнего угла экрана. Значения этих свойств должны быть положительными или равными 0;
    • height , width — высота и ширина рабочей области окна браузера. При указании значений необходимо учитывать, что ширина и высота окна браузера не может быть меньше 100 пикселей;
    • resizable — логическое свойство окна, которое предназначено для включения или выключения возможности изменения размеров окна браузера. Данное свойство принимает следующие значения: yes или 1 , и no или 0 ;
    • scrollbars — логическое свойство окна, которое предназначено для включения или выключения отображение полос прокрутки для содержимого окна браузера. Данное свойство принимает следующие значения: yes или 1 , и no или 0 ;
    • status — логическое свойство окна, которое предназначено для включения или выключения отображения статусной строки браузера. Данное свойство принимает следующие значения: yes или 1 , и no или 0 .

Рассмотрим следующий примеры:

1. Открыть пустую страницу about:blank в новом окне. Данное окно должно иметь ширину и высоту, равную 250рх:

2. Открыть веб-страницу «http://itchief.ru/» в текущем окне:

3. Открыть новое окно, имеющее определённые свойства (top=100, left=100, w >

Как взаимодействовать с окном после его открытия?

Метод open() позволяет не только открыть окно, но и получить ссылку на данное окно. Данная ссылка позволяет взаимодействовать с этим окном посредством вызова определённых свойств и методов. Т.е. мы можем с помощью JavaScript кода, расположенного в одном окне управлять другим окном.

Например, для того чтобы обратиться к объекту document открытого окна:

Открыть пустое новое окно и вывести в ней некоторый текст:

Примечание: Взаимодействовать Вы можете только с теми окнами, которые сами открыли, с другими окнами Вы работать не можете.

Метод close()

Он предназначен для закрытия окна. Данный метод не имеет параметров. Он обычно используется для закрытия окон созданных методом open() . В противном случае, когда Вы попытаетесь закрыть окно (вкладку), открытое самим пользователем (не из JavaScript), то браузер из-за соображений безопасности запросит у пользователя подтверждение на выполнение этого действия.

Например, cоздадим кнопки для открытия и закрытия окна с именем myWindow :

Метод print()

Он предназначен для печати содержимого окна. Данный метод не имеет параметров.

Метод focus()

Он предназначен для передачи фокусу указанному окну. Данный метод не имеет параметров.

Метод blur()

Он предназначен, чтобы убрать фокус с указанного окна, т.е. перемещает его на задний план. Данный метод не имеет параметров.

Свойства объекта window : name , opener , closed .

В этом разделе рассмотрим следующие свойства объекта window :

  • name — предназначено для получения или установления внутреннего имени окна;
  • opener — позволяет получить в текущем окне, ссылку на окно (объект window ), с которого было открыто данное окно;
  • closed — свойство логического типа, которое возвращает: true , если окно закрыто и false , если окно открыто.

Свойство name

Данное свойство очень часто используется для изменения внутреннего имени окна, после того как оно уже открыто. Кроме этого, свойство name может вернуть текущее значение внутреннего имени окна.

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

Данное имя в основном используется в гиперссылках и формах для указания окна, в котором необходимо открыть страницу. Например, для указания внутреннего имя окна в гиперссылке используется атрибут target , Если элемент а имеет атрибут target=»searchWindow» , то при нажатии на данную ссылку браузер сначала пытается найти окно с таким внутренним именем ( searchWindow ), если окна с таким внутренним именем не существует, то он открывает новое окно и присваивает ему имя searchWindow . А если окно с таким именем существует, то новое окно не открывается, а перезагружается страница по указанной ссылке а этом окне. По умолчанию окна а браузере не имеют внутреннего имени.

Например, откроем страницу «http://www.google.com/» в окне, имеющем имя myWindow :

Например, откроем окно с помощью метода open() и выведем в нём его имя:

Свойство opener

Данное свойство позволяет получить в окне, ссылку на исходное окно (объект window ), т.е. на окно из которого было открыто данное окно.

Например, у Вас есть исходное окно (1), в котором Вы с помощью метода ореn() открываете другое окно (2). В этом окне (2) Вы можете с помощью свойства opener получить окно (1).

Свойство closed

Свойство closed возвращает логическое значение, указывающее закрыто окно или нет.

How to close current tab in a browser window?

I want to create a link on a webpage that would close the currently active tab in a browser without closing other tabs in the browser.
When the user clicks the close link, an alert message should appear asking the user to confirm with two buttons, «YES» and «NO». If the user clicks «YES», close that page and If «NO», do nothing.

How can it be done? Any suggestions?

I might be late here but this is prevented by the browsers for a reason.

Think of yourself trying to close a window again and again and it’s not closing as its doing the «if no» part from your question which is ‘do nothing’.

This will be irritating for sure ! – Muhammad Osama Mar 16 ’19 at 8:54

14 Answers 14

You will need Javascript to do this. Use window.close() :

Note: the current tab is implied. This is equivalent:

or you can specify a different window.

You return false here to prevent the default behavior for the event. Otherwise the browser will attempt to go to that URL (which it obviously isn’t).

Now the options on the window.confirm() dialog box will be OK and Cancel (not Yes and No). If you really want Yes and No you’ll need to create some kind of modal Javascript dialog box.

Note: there is browser-specific differences with the above. If you opened the window with Javascript (via window.open() ) then you are allowed to close the window with javascript. Firefox disallows you from closing other windows. I believe IE will ask the user for confirmation. Other browsers may vary.

This method works in Chrome and IE:

As far as I can tell, it no longer is possible in Chrome or FireFox. It may still be possible in IE (at least pre-Edge).

It is possible. I searched the whole net for this, but once when i took one of microsoft’s survey, I finally got the answer.

this will close the current tab for you.

Tested successfully in FF 18 and Chrome 24:

Try this as well. Working for me on all three major browsers.

The following works for me in Chrome 41:

I’ve tried several ideas for FF including opening an actual web-page, but nothing seems to work. As far as I understand, any browser will close a tab or window with xxx.close() if it was really opened by JS, but FF, at least, cannot be duped into closing a tab by opening new content inside that tab.

That makes sense when you think about it — a user may well not want JS closing a tab or window that has useful history.

Sorry for necroposting this, but I recently implemented a locally hosted site that had needed the ability to close the current browser tab and found some interesting workarounds that are not well documented anywhere I could find, so took in on myself to do so.

Note: These workarounds were done with a locally hosted site in mind, and (with the exception of Edge) require the browser to be specifically configured, so would not be ideal for publicly hosted sites.

Context: In the past, the jQuery script window.close() was able to close the current tab without a problem on most browsers. However, modern browsers no longer support this script, potentially for security reasons.

Google Chrome:

Chrome does not allow the window.close() script to be to be run and nothing happens if you try to use it. By using the Chrome plugin TamperMonkey however we can use the window.close() method if you include the // @grant window.close in the UserScript header of TamperMonkey.

For example, my script (which is triggered when a button with is pressed on the browser popup) looks like:

Note: This solution can only close the tab if it is NOT the last tab open however. So effectively, it cannot close the tab if it would cause window to closes by being the last tab open.

Firefox:

Firefox has an advanced setting that you can enable to allow scripts to close windows, effectively enabling the window.close() method. To enable this setting go to about:config then search and find the dom.allow_scripts_to_close_windows preference and switch it from false to true.

This allows you to use the window.close() method directly in your jQuery file as you would any other script.

For example, this script works perfectly with the preference set to true:

This works much better than the Chrome workaround as it allows the user to close the current tab even if it is the only tab open, and doesn’t require a third party plugin. The one downside however is that it also enables this script to be run by different websites (not just the one you are intending it to use on) so could potentially be a security hazard, although I cant imagine closing the current tab being particularly dangerous.

Disappointingly Edge actually performed the best out of all 3 browsers I tried, and worked with the window.close() method without requiring any configuration. When the window.close() script is run, an additional popup alerts you that the page is trying to close the current tab and asks if you want to continue.

Final Note: The solutions for both Chrome and Firefox are workarounds for something that the browsers intentionally disabled, potentially for security reasons. They also both require the user to configure their browsers up to be compatible before hand, so would likely not be viable for sites intended for public use, but are ideal for locally hosted solutions like mine.

Программируем свойства окна браузера

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

Что можно сделать с окном? Открыть (создать), закрыть (удалить), положить его поверх всех других открытых окон (передать фокус). Кроме того, можно управлять свойствами окна и свойствами подчиненных ему объектов. Сосредоточимся на простых и наиболее популярных методах управления окнами.

alert()

Метод alert () позволяет выдать окно предупреждения , имеющее единственную кнопку «OK»:

Нужно лишь иметь в виду, что сообщения выводятся системным шрифтом , следовательно, для получения предупреждений на русском языке нужна локализованная версия ОС.

confirm()

Метод confirm () позволяет задать пользователю вопрос, на который тот может ответить либо положительно (нажав кнопку «OK»), либо отрицательно (нажав кнопку «Отмена» или » Cancel «, либо просто закрыв окно запроса). В соответствии с действиями пользователя метод confirm () возвращает значение true либо false . Пример:

Все ограничения для сообщений на русском языке, которые были описаны для метода alert () , справедливы и для метода confirm () .

prompt()

Метод prompt() позволяет принять от пользователя cтроку текста. Синтаксис его таков:

Когда пользователь введет свой ответ (либо оставит неизменным ответ по умолчанию) и нажмет кнопку OK, метод prompt() возвратит полученную строчку в качестве значения, которое можно далее присвоить любой переменной и потом разбирать ее в JavaScript-программе.

window.open()

Метод open() предназначен для создания новых окон . В общем случае его синтаксис выглядит следующим образом:

Первый аргумент задает адрес страницы, загружаемой в новое окно (можно оставить пустую строку, тогда окно останется пустым). Второй аргумент задает имя окна , которое можно будет использовать в атрибуте TARGET контейнеров и

При нажатии кнопки «Простое окно» получаем окно со следующими параметрами:

  • directories=no — окно без панели папок
  • height=200 — высота 200 px
  • location =no — поле адреса отсутствует
  • menubar=no — без меню
  • resizable =no — размер окна изменять нельзя
  • scrollbars=no — полосы прокрутки отсутствуют
  • status =no — статусная строка отсутствует
  • toolbar =no — системные кнопки браузера отсутствуют
  • w > — ширина 200 px

При нажатии кнопки «Сложное окно» получаем окно, где:

  • directories=yes — окно с панелью папок
  • height=200 — высота 200 px
  • location =yes — поле адреса есть
  • menubar=yes — меню есть
  • resizable =yes — размер изменять можно
  • scrollbars=yes — есть полосы прокрутки
  • status =yes — статусная строка есть
  • toolbar =yes — системные кнопки браузера есть
  • w > — ширина 200 px

window.close()

Метод close() позволяет закрыть окно. Чаще всего возникает вопрос, какое из окон, собственно, следует закрыть. Если необходимо закрыть текущее, то:

Если мы открыли окно с помощью метода window.open() , то из скрипта, работающего в новом окне, сослаться на окно-родитель можно с помощью window.opener (обратите внимание, здесь window ссылается на объект нового, созданного окна, т.к. оно использовано в скрипте, работающем в новом окне). Поэтому, если необходимо закрыть родительское окно, т.е. окно, из которого было открыто текущее, то:

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

Как видно из последнего примера, закрывают окно не по имени (значение атрибута TARGET тут ни при чем), а используют указатель на объект.

Читать еще:  Выборочному наблюдению присущи ошибки
Ссылка на основную публикацию
Adblock
detector