Вот если например взять любую ссылку и открыть ее в новом окне, то новой странице передастся refer(r)er. Оказывается, [...] передастся еще и объект window.opener указывающий на предыдущую страницу. Делать с объектом особенно ничего нельзя, поскольку живет он на другом сайте, кроме одного: можно перенаправлять на другой адрес. Вот так:
if (window.opener) {
window.opener.location = 'http://some.other.site/';
}Какого хрена эту возможность вставили, я не знаю, хороших применений я тут придумать не могу. А негативное пожалста: берешь сайт типа ЖЖ, Эвернота или веб-почты, желательно с часто слетающей авторизацией, постишь туда ссылку на свой злой сайт. На злом сайте какие-нить котики для отвлечения внимания, и джаваскрипт, перенаправляющий исходный сайт на фейковую страницу авторизации. Посмотрит пользователь котиков, вернется домой, поцокает языком да и, глядишь, попробует назад залогиниться...
Юрий Синодов, Roem.ru — Дефицит курьеров привёл к падению роста продаж продуктов с доставкой 2 Юрий Синодов, Roem.ru — Маша Лапук, автор уникальной книги о пиаре, станет совладелицей импортозамещённого Inc. 2 Vladimir Ilyashov — Можно узнать, дискриминирует ли «Яндекс» при найме по возрасту? Да! 1
Alexandre Prokoudine — Не самые очевидные выводы из борьбы сообщества свободного Open Source с россиянами 1 Игорь Ашманов, Сам себе компания — Обязан ли супруг учитывать мнение своего партнёра при перераспределении долей в бизнесе, созданном во время брака? 1 Александр Панков — Арест Дурова как атака на русскую IT-альтернативу 1
Даниил Соснин, Dashamail — Сервис рассылок GetResponse уходит из России, отключая доступ пользователям одним днём 1 Юрий Синодов, Roem.ru — Поисковик Яндекс.Нейро начал работать во всех браузерах. Даже без логина 1 фрилансер — В РЖД придумали способ утилизации непроданных мест на участках южных маршрутов 1
Лучшее за неделю
Добавить 4 комментария
В рот мне ноги!
Что-то я не понял, что такое «вернется домой». Это же новое окно — если его закрыть, ничего не произойдет; истории у него нет, кнопка «Назад» работать не будет.
В чем проблема?
Там же по ссылке есть работающий пример. Вернется домой — переключится обратно в изначальный таб.
А, дошло. Не «передается объект», а «передается ссылка на объект».
Ну, в принципе, понятно зачем так сделано — чтобы можно было ваять «диалоги», ввод какой-нибудь доп информации в новом окне (понятно, что это все возникло до того, как CSS/javascript развилось в то, во что оно превратилось сейчас).