Программирование > JavaScript & JScript
Модальный диалог вручную
(1/1)
0b0rm0t:
Пытаюсь сделать из запущенного hta приложения подобие модального диалога - чтоб висело поверх всего.
Ничего лучше, чем написать \'\', не придумал. Вроде ничего вышло - висит, все как надо. Но появилась проблема - в этом окне есть пара input\'ов. Так вот в них ничего нельзя написать. Как только устанавливаю фокус на одном из них, он (фокус) сразу же теряется.
Вопрос - как повесить onblur таким образом, чтобы он не реагировал на перемещения по документу? Ну или как по-другому получить окно, висящее поверх родительского (что нибудь вроде showModal/ModelessDialog)? Сам модальный диалог не подходит - он не может менять свой URL (по крайней мере я не смог это провернуть), а это необходимо.
alm:
Да интересно. По первому пункту у меня заработало так
--- Код: ---
var flag = true;
--- Конец кода ---
Основная идея в том, что сначала идет блур, а потом фокус. На блур откладываем возврат фокуса (setTimeout) и проверяем не поймал ли фокус, кто то из наших.
Наверное все это можно модифицировать и как нибудь по круче изгольнуться, но и так вроде работает :).
alm:
--- Цитировать ---Сам модальный диалог не подходит - он не может менять свой URL (по крайней мере я не смог это провернуть), а это необходимо.
--- Конец цитаты ---
Еще как может. Надо только наверху прописать
--- Код: ---
window.name = "mymodal";
--- Конец кода ---
а все ссылки делать так
--- Код: ---LINK
--- Конец кода ---
--------------------------
Там есть другая проблема, что нельзя менять window.location из скрипта. Но это обходится тем, что делается скрытая форма без полей (ей тоже надо прописать target как ссылке выше), потом из скрипта меняешь action и скриптом вызываешь ей сабмит. Ну или что-то в этом роде. Однозначно извращение, но работает.
Навигация
Перейти к полной версии