Модальное окно на javascript
Версия 2.0
https://github.com/cyberua/multiPopupJS |
А почему когда кликаем не на окне-окно исчезает?
само название модальное говорит о том что пока по нему не кликнем оно не исчезнет-остальной контент-пассивный |
Закинь в песочницу несжатый скрипт.
|
vadim5june, для этого я и добавил события
on(event, handler) // установка обработчика событий (обработка 2х событий 'open' and 'close' ) //функция handler должна возвращать true || false, если true событие будет обработано , иначе нет. допустим, нужно запретить закрывать окно, до определенного момента. var closed = false; modal.on('close', function (){ return closed;// пока возвращает false окно не закроется }); danik.js, готово. |
up [изменил первый пост]
|
Не пробовал центрировать по горизонтали через css:?
margin: auto; left: 0; right: 0; Ну и Show/Close - где ты видел в JS имена методов с большой буквы? Это дикость. Плюс мне кажется имена должны быть show/hide либо open/close - посмотри в фреймворках / модальных скриптах разных какие в них имена используются. |
а пашиму там js код в отделе css?
|
animhotep, на jsfiddle ?
|
Цитата:
Насчет имен, спс, подправлю |
Цитата:
|
Цитата:
Это хак такой, что бы код не мешал в поле для js. http://jsfiddle.net/CyBer_UA/NV4zR/ |
|
Цитата:
там же External Resources есть для скриптов. а вобще не понимаю почему фиддл так популярен. кодпен удобней например. или этот, если разработчица когданидь js допилит)) |
animhotep, мне удобней так.
На вкус и цвет ... мне он нравиться больше. |
https://github.com/cyberua/modalJS обновил до 1.0
|
cyber,
скорее всего нет. На это две причины: 1. подобные скрипты довольно просты и повторяют уже многие существующие решения; 2. Особенность аудитории форума. Даже если у тебя крутой/сложный/большой проект(см. тему SS), то это совсем не значит, что посвящённые ему темы будут ломиться от сообщений(по крайней мере сразу после создания). |
Safort, да меня штырит (25 часов в дороге..) не много не обращяй внимание:)
Я эту штуку пилю под себя, поэтому как то пофиг юзает ее кто кроме меня:) |
addClass/removeClass у тебя неправильные.
var classes = elem.className.split(" "); Пробелов может быть несколько идущих подряд. Тогда делать trim(). Вот только зачем, если на регулярках быстрее? В code style хаос - кавычки разные, пробелы то есть, то их нет. Думаю это не самое страшное в твоем коде )) Опечатки, безграмотный английский - тоже мелочи )) |
Цитата:
Цитата:
|
danik.js, а вообще спасибо, за кртитику, то что нужно, мелкие баги поправлю:)
Цитата:
П.с сам скрипт фигня (по сложности) и я эта прекрасно понимаю:) |
Описание:
Цитата:
Цитата:
function modal Конструкторы с большой буквы - не вкурсе чели? throw "Incorrect parameter 'window', expected Element"; Помоему это TypeError. И вроде аргумент, а не параметр. Цитата:
Цитата:
Цитата:
Цитата:
isHTMLElement вернет true даже для SVGElement (у них же есть style?) или просто Element. К чему проверка style? |
danik.js, зоопарк с функциями и именами поправлю, я просто сначала поправил функционал.
Цитата:
|
getSupported - это не буливая функция, там возвращает по строку с поддерживаемым методом, поэтому не is*
|
Цитата:
Цитата:
обычно не используют вообще булевы с "not" - слишком громоздко получается в конкреном случае можно заюзать и useAnimate или вообще animate (вверх простоты) |
Цитата:
Цитата:
|
Цитата:
это не поломает функции, но trim добавил, так как пробелы могут быть в начале и конце Цитата:
|
Обновил до 1.0.5
https://github.com/cyberua/modalJS |
Обновил до 1.1
https://github.com/cyberua/modalJS |
Версия 2.0
https://github.com/cyberua/multiPopupJS |
Знаю что скрипт особо кроме меня не кому не нужен, но я тут учу инглишь что скажете по комментам, сильном много ошибок?)
|
Часовой пояс GMT +3, время: 06:04. |