Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Окно при помощи jQuery и только!


Автор: webaliser 4.12.2009, 13:07
Добрый всем, господа!

Мне нужен не просто совет, а настоящее толкование вопроса! Будьте так добры, не тратьте время на фразы в 1-2 слова. Ни одного дельного совета еще не прочитал. Спасибо!

Итак, моя задача: Мне нужно окно на подобии litebox'а и его производных, но!
  • Окно фиксированного размера
  • Окно должно быть без бордюров вообще
  • Возможность закрытия окна внутри окна (думаю, это не проблема, но все равно отмечу)
  • Содержимое окна по большей части HTML+JavaScript 
  • Нормальная работа в IE6 (зловещий пункт, но все же)
  • Единственный фреймворк - jQuery
  • Никаких LightWindow, lightbox, lytebox, openbox и прочего!
Вопрос к спецам: Чтобы это все счастье реализовать, мне нужно понять технологию создания такого окна на пальцах. Кто-то объяснит?

Например: Какой HTML код нужно сгенерить, чтобы окно появилось; тонкости со стилями (Окно должно быть без бордюров вообще). 

Я не прошу азбуку, CSS/HTML я знаю на уровне верстальщика страниц, php - достаточно, JavaScript - хватит чтобы понять код. Спасибо за конструктивные пояснения.

Автор: EmilRegis 4.12.2009, 17:02
так в чём проблема, если всё перечисленное вы знаете? вашим окном будет обычный абсолютно-позиционированный див...Красоту его появления на экране зададите с помощью jquery...остальное нюансы...
прошу прощения за 
Цитата

Мне нужен не просто совет, а настоящее толкование вопроса! Будьте так добры, не тратьте время на фразы в 1-2 слова. Ни одного дельного совета еще не прочитал. Спасибо!

не удержался)

Автор: IDVsbruck 5.12.2009, 00:27
Я тоже не врубился ... такой матерый веб-программер, и тут такой затык ...
В чем проблема-то? jQuery сделан и с расчетом на ИЕ6 тоже, так что зловещего ничего не вижу. Впрочем, и трудностей тоже.

На странице сразу ставишь скрытый див. После загрузки страницы рестайлишь его (только не display:none, а visibility:hidden, а то не отрендерится), причем, основные стили можно задать и на уровне класса. Кроме чистого дива можно на страницу ничего не пихать, все сделать в рестайлере: текстовое поле, кнопку закрытия окна, кнопки если нужны и т.д. В том же рестайлере можно описать обработчики открытия (даже через trigger), так и закрытия - чтобы "слушать" закрытие окна. Вызывать можно элементарно - $("#your_div-win").trigger("open_our_modal_win", []), а в обработчике уже обыграть процесс открытия - нужно ли затемнение, плавность, доступность элементов на странице и т.д.

Одним словом - простые и банальные вещи, описывать кодом смысла не вижу. Будут проблемы с готовым кодом - милости просим.

Автор: webaliser 5.12.2009, 10:46
Спасибо, граждане, за советы, но спустя часок-другой после моего последнего поста, я прочитал мануал по jQuery и... слепил  (хотя, замечу, я практически так и сделал, как вы описали)

IDVsbruck, отдельное спасибо! Кстати, я как раз не visibility:hidden, а display:none задавал. Я так понял, что разница в fade-овом появлении, или еще в чем то? А за 

Цитата

такой матерый веб-программер, и тут такой затык ...


я чуток обиделся... Просто я четко с этим не сталкивался так плотно, вот и задал вопрос. А вообще я разбираюсь во всем быстро, а с 2006 года я сделал 293 сайта под ключ.

Всем спасибо за ответы! Все конструктивно понятно...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)