Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Передать ссылку в род. окно (https://javascript.ru/forum/events/22683-peredat-ssylku-v-rod-okno.html)

SnikerS 28.10.2011 16:48

Передать ссылку в род. окно
 
Здравствуйте.

Есть сайт: на карточках товара приложена инфа о доставке, гарантии и компании. Ссылки сделаны через js, чтобы открывать небольшие окна:
<div class="tech_div"><a href="/files/more/delivery/delivery.html" onClick="window.open('/files/more/delivery/delivery.html', 'newWin', 'Toolbar=0, Location=0, Directories=0, Status=1, Menubar=0, Scrollbars=1, Resizable=1, Copyhistory=0, Width=790, Height=580'); return false"><b>Доставка</b></a></div>

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

Читал про window.parent и window.close, но все мои потуги ни к чему не привели...

Подскажите, пожалуйста, как правильно это реализовать?

SnikerS 01.11.2011 14:54

неужели никто не знает?

ksa 01.11.2011 20:13

Цитата:

Сообщение от SnikerS
Подскажите, пожалуйста, как правильно это реализовать?

Например обычным модальным окном.
http://www.fpublisher.ru/documentati...howmodaldialog
Пусть оно вернёт родительскому нужный УРЛ, а потом обычный

top.location='url'

SnikerS 02.11.2011 15:21

Спасибо за ссылку, именно на том сайте и читал.

пытаюсь изменить open на showmodal:
<a href="/files/more/delivery/delivery.html" onClick="window.showModalDialog('/files/more/delivery/delivery.html', ' ', 'dialogHeight:580; dialogWidth:790; resizable:no;') ">

в oper'e открывается как обычная текстовая ссылка (ie, ff - норм). =(( open работает везде.

ksa 02.11.2011 15:24

Цитата:

Сообщение от SnikerS
пытаюсь изменить open на showmodal:

Что-то из твоего "примера" этого не видно... :)

window.showModalDialog("http://javascript.ru/forum/events/22683-peredat-ssylku-v-rod-okno.html#post134112", "",
 "dialogHeight:100; dialogWidth:100; resizable:yes; edge:sunken");

SnikerS 02.11.2011 15:29

да, описался... исправил.

при запуске вашего скрипта опера выдаёт:
error: 'window.showModalDialog' is not a function

ksa 02.11.2011 15:32

Цитата:

Сообщение от SnikerS
исправил

Так а что в том файле "/files/more/delivery/delivery.html" делается?

И у тебя ссылка на
href="/files/more/delivery/delivery.html"

онклик отработал - пошел переход на то, куда указали... :) Т.ч. все как и написал ты. Если нужно не так - таки пиши по-другому... ;)

SnikerS 02.11.2011 15:33

там чистый html без всяких скриптов

ksa 02.11.2011 15:34

Цитата:

Сообщение от SnikerS
там чистый html без всяких скриптов

А ссылку кто будет возвращать? :D
Там скрипт должен быть. Он-то и вернёт что нужно...

SnikerS 02.11.2011 15:50

про возврат урла я пока и не думал, showmodaldialog не работает в опере - и это причина от него отказаться.
а через open, opener, parent можно как-то решить задачу?

ksa 02.11.2011 15:54

Цитата:

Сообщение от SnikerS
а через open

Этод метод открывает обычное окно, не модальное...

Используй тогда обычный ДИВ с затемнением всего содержимого окна... Там рисуй кнопки... На вид всё будет как модальное окно, а на деле все будет в окне текущем.

SnikerS 02.11.2011 16:31

highslide тогда лучше... спасибо за помощь

SnikerS 15.11.2011 11:52

ещё, пожалуйста, минуточку вашего внимания:

а возможно открыть ссылку из этого (window.open) окна с target=blank, а само окно закрыть.

прописываю ссылку <a href="link/link/" target="_blank" onclick="self.close()"> - окно закрывается, но ссылка не открывается....

ksa 15.11.2011 11:58

Цитата:

Сообщение от SnikerS
окно закрывается, но ссылка не открывается

onclick срабатывает раньше... :D

SnikerS 15.11.2011 12:00

дык, вижу... как быть?

ksa 15.11.2011 12:05

Цитата:

Сообщение от SnikerS
как быть?

Я так вообще считаю это извращением. :) Зачем открывать одно окно, при этом закрывая предыдущее? :blink:
Всё в одном и делать...

SnikerS 15.11.2011 12:12

Ну вообще смысл заключается в том, чтобы в небольших окнах показывать дополнительную информацию к товарам. Пользователь остается на стр. товара и быстро может посмотреть всё необходимое (доставка гарантия и тп).
Так вот это маленькие окна 600x500 - в них будет неудобно навигацию осуществлять. Скинул пример в личку.

ksa 15.11.2011 14:00

Цитата:

Сообщение от SnikerS
в небольших окнах показывать дополнительную информацию к товарам

Это мне понятно... :) Мне не понятно зачем материнское окно мочить...

SnikerS 19.03.2012 10:25

Здравствуйте, ksa. Я снова ломаю голову над этой проблемой.

Цитата:

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

Можно как-то вместе с переходом размер окна до нормальных размеров изменить?
Или возможно будет проще перестроить конструкцию этих окон под какой-нибудь highslide?


Часовой пояс GMT +3, время: 08:27.