Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> download + redirect на одном клике 
V
    Опции темы
Golda
Дата 11.6.2007, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: нет
Всего: 42



Задача. По клику пользователя на картинке/текстовой ссылке одновременно нужно 
  •  загрузить файл
  •  перевести пользователя на другую страницу с пояснениями

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

По ряду причин не проходит вариант, который я использовала обычно в подобных случаях: 
Код

<a href="link_to_file_to_download" onclick="hideshow()">


где функция hideshow() скрывает один <div> и открывает другой с нужной  информацией. Нужно именно перевести пользователя на другую страницу. 

Сейчас, если схемтизировать, делаю так. 

Код

<script type="text/javascript">
function redirect()
{
   var win = openerwin.open('', "Download","width=1,height=1,top=0,left=0");
   if (win) {
    win.document.write('<html><head></head><body><script type="text/javascript">function redir(){window.opener.location.href="download.html";self.close();}setTimeout("redir()",2000);</script></body></html>');
        }
}
</script>
<a href="download();"><img src="download.gif" onclick="redirect();"></a>


Т.к. реальный клик был, попытки блокировать это всплывающее окно не происходит. Редирект осуществляется из другого окна. Но есть побочный эффект. На 2 секунды открывается хорошо заметное новое окно броузера, размером отнюдь не 1х1, причем пустое.

Может быть, у кого-то есть решение получше?


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
SelenIT
Дата 12.6.2007, 01:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Golda, насколько я понял, тут вся суть в том, чтобы перегрузить страницу через 2 секунды после клика по ссылке? По-моему, абсолютно тот же эффект даст обычный таймаут без открытия нового окна...
Код

<a href="file.zip" onclick="setTimeout(function(){self.location='download.html'},2000)">ссылка</a>



--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Golda
Дата 12.6.2007, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: нет
Всего: 42



Да, конечно. Спасибо, SelenIT. Видимо, затмение нашло  smile 


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0861 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.