![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Здравствуйте.
Делаю такую ссылку: <a href="vingrad.ru" onclick="window.close" target="_blank">Ссылка</a> Что я ожидал от этой ссылки: то что, при нажатии на нее откроектся новое окно, с указанным url, а старое закроется. В Explorer все так и работает. Но в дремучем Opera (2005 год) просто зарывается окно, я это броузер терпеть немогу, с ним всегда геморой, он работатет на своей волне. Подскажите возможное решени этой проблемы. // Netscape работает как opera, только что проверил. Что я неверно сделал код? Это сообщение отредактировал(а) Гриша - 4.1.2006, 21:46 --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
| Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
у мен в эксплорере твой код не работает....
ну и в Мозилле тоже.. в ИЕ работает при таком: onclick="window.close()", но выходит табличка с запросом на закрытии окна... а в Мозилле нету и такого... есть ещё какие-то методы закрытия.. надо искать... -------------------- =) |
|||
|
||||
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Innuendo, спасибо за ответ.
Сначала при помощи javascript я открываю новое окно, и как раз при помощи это кода <a href="vingrad.ru" onclick="window.close" target="_blank">Ссылка</a> я закрываю такое окно. Такие окна закрываются без предупреждения. Эта функция стандартная. Netscape (Mozilla) и Opera, окна то закрываются, но вот ссылка не открывается. Ведь я хочу чтобы открылось новое окно, а строе закрылось. Как же это сделать? --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
| Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
странно, запустил твой код:
окна нигде не закрываются.... и ссылка открывается -------------------- =) |
|||
|
||||
| Illuminaty |
|
|||
![]() /*Антон Захаров*/ ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1238 Регистрация: 19.3.2005 Где: Россия, Казань Репутация: 4 Всего: 56 |
Что то я видимо совсем после праздников опух....
Не понимаю, если тебе надо закрыть старую страницу (на которой находится ссылка) и открыть новую, то зачем писать такой код? Разве при активации ссылки тоже самое не происходит? Т.е. новая страница перекрывает старую... Не понимаю... |
|||
|
||||
| Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
точно..в данном случае открывается новое окно, и он хочет закрыть старое...
а если убрать target="_blank", то ссылка просто откроется в этом окне... что ещё надо? -------------------- =) |
|||
|
||||
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Спасибо всем за ответы.
Во первых код я пишу немного неправильно, забыл скобки: <a href="http://vingrad.ru" onclick="window.close()" target="_blank">Ссылка</a> Во вторых я открываю окно при помощи javascript размеров 400x500, с параметрами: полоса прокрутки и изменение размера. При нажатии на указанную ссылку я хочу чтобы октрылось новое окно (уже обычное окно), в котором буде октрыта страница сайта, допустим vingrad.ru, ну не буду же я открывать ее в окне где есть только полоса прокрутки и размер окна 400x500 пикселей. И я также хочу сделать так, чтобы при открытии нового окна старое окно размером 400x500 закрывалось. Вы теперь поняли то что я хочу сделать? Получается, что описанный выше код закрывает окно, но не отрывает новове во всех броузерах кроме IE. Это сообщение отредактировал(а) Гриша - 5.1.2006, 15:49 --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
| Illuminaty |
|
|||
![]() /*Антон Захаров*/ ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1238 Регистрация: 19.3.2005 Где: Россия, Казань Репутация: 4 Всего: 56 |
Попробуй так:
|
|||
|
||||
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Illuminaty, спасибо за код. Сейчас попробую.
Только в Opera проблема ткакая, если в новом окне, октрытом при помощи javascript, нажать на такую ссылку <a href="http://vingrad.ru" onclick="window.close()" target="_blank">Ссылка</a>, то окно просто закроется. А если нажать на ссылку <a href="http://vingrad.ru" target="_blank">Ссылка</a>, то откроется новое окно нормально, а старое останется - так и должно быть. Так вот, я добавил window.close(), чтобы открывалось новое окно, а старое закрывалось (так работает только в IE) И еще мне нужно чтобы ссылка была прямая, т.е. <a href = "htt://vingrad.ru" .... >Ссылка</a>, я щас попробую что-то сделать в с вашим кодом. А вообще я в javascript знаю какие-то основы и все, никак немогу разобраться с этим языком, Ssi, Perl, PHP, Css - напного проще давались, наверное книги такие были. Это сообщение отредактировал(а) Гриша - 5.1.2006, 18:30 --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Illuminaty, в OPERA и IE ваш код работате, а вот в Netscape, получается так, что он как бы открывается в этом же окне, только на весь экран (может быть новое окно такое - безразницы), и высота у окна больше экрана, я даже ниц не могу увидеть.
ЧТо-то не то. Вот я так плохо знаю jvascript, что не могу додуматься написать код так, чтобы броузер понял, что после открытия нового окна, старое нужно закрыть, или закрыть это окно и открыть новое. --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Ну вот я в итоге сделал так: <a href="javascript:window.close();window.open('http://vingrad.ru/');">Ссылка</a>, пратически тоже самое, что и у Illuminaty, данный вариант кода работает во всех 3 броузерах. Но мне нужна прямая ссылка.
Я попытался сделать эту ссылку примерно так как описано в другой моей теме: http://forum.vingrad.ru/index.php?showtopic=76595 - не получилось. И кстати мне несовсем понятно почему, ведь там как раз я и сделал код открытия прямой ссылки в новом окне, а пытаясь соединить с кодом в данной теме, получается что ссылка как бы октрывается в текущем окне и потом, закрывается (по условию кода уже). ============================== Я вот такой вариантик придумал хитрый: <a href="http://vingrad.ru/" onclick="window.close();window.open('http://vingrad.ru/');">Ссылка</a> - как видите, здесь на самом деле неважно, что мы укажем в href="...", получается, что данный скрипт окрывает ссылку по указанному адресу href="http://vingrad.ru/" в текущем окне, потом сразу же закрывает это окно window.close() и открывает новое окно по указанному адресу window.open('http://vingrad.ru/'); И конечно я сделал так, что если пользователь попадает на страницу, которая открываетя уменя в новом окне, не по ссылке с моего сата, а например с поисковика, то будет отображаться такая ссылка <a href="http://vingrad.ru/">Ссылка</a> ============================ Вот хотелось бы все таки сделать данный код: <a href="http://vingrad.ru/" onclick="window.close();window.open('http://vingrad.ru/');">Ссылка</a> чтобы он окрывал правильно именно ту страницу которая указана в href="" Если есть соображения, то напишите пожалуйста. Это сообщение отредактировал(а) Гриша - 5.1.2006, 20:17 --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
| Sardar |
|
||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Нет, переход по href срабатывает позже чем отрабатывает onclick.
Можно так:
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||
|
|||||
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Sardar, огромное спасибо вам за помощь. Это супер вариант. Я увидел, что даже если окно октрывалось без помощи javascript, то при закрытии такого окна IE не просит разрешение на его закрытие, это значительно упрощает работу. А то при помощи php мне приходилось выводить сыылки в зависимости от того как окно открывалось.
А то, что в моем коде href="http://vingrad.ru/" срабатывает после onclick, я не совсем это понял, ведь оно же все равно закрывается при помощи window.close() Еще раз спасибо вам за такой хороший код. --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
| Sardar |
|
||||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Функционально происходит именно то что ты хочешь Если же отследить по шагам что на самом деле происходит, то увидим, что браузер заставляет сначала отработать onclick (что логично) и только потом перейти по ссылке. Таким образом мы можем остановить переход традиционным способом вернув false из обработчика события, что в моём примере и происходит. Другими словами: если у пользователя включен JS, то ссылка откроеться в твоём новом окне с параметрами, иначе ссылка всё равно откроеться в новом окне (target="_blank"), а вот в каком окне это уже зависит от бразуера.
Это не код, это короткая строка кода -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||
|
|||||
| Гриша |
|
|||
![]() НУС(незнаю|узнаю|создаю) ![]() Профиль Группа: Участник Сообщений: 181 Регистрация: 12.6.2005 Где: Земля, Москва, Хр ущевка Репутация: нет Всего: 1 |
Sardar, спасибо за разъяснение. Тяжело мне как-то с javascriptom разабраться, вот никак он мне не дается.
Но у меня на сайте действительно очень многое зависит от javascript, без него не было бы той интерактивности, которая есть. Без javascript даже пришлось бы внести изменения в дизайн, а во всем мне помогли участники этого форума, ух даже незнаю чтобы я делал без этого форума. --------------------
Если долго мучиться, что-нибудь получитЬся. |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |