Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Dialog Windows (https://javascript.ru/forum/project/68062-dialog-windows.html)

exec 23.03.2017 20:34

Dialog Windows
 
Окошки-окошки.

Демо-страница

Что реализовано:

Стандартный функционал (drag and drop, модальное окно)
Внутренний интерфейс для создания форм
Легко настраиваемое офомление

Что ещё нужно:

resizable
Закончить интерфейс для форм (сделать чекбоксы, радио, селекты со своим оформлением)
Работа с AJAX, загрузка содержимого с другой страницы

рони 23.03.2017 21:25

exec,
кодировку бы добавить на страницу

рони 23.03.2017 21:28

:-? Diphenyl Oxalate, Всплывающие окна

exec 23.03.2017 21:30

Цитата:

Сообщение от рони (Сообщение 448282)
exec,
кодировку бы добавить на страницу

Неправильно отображается?
Все файлы в utf-8

рони 23.03.2017 21:51

Цитата:

Сообщение от exec
Неправильно отображается?

да ,к кодировке самого файла вопросов нет, но
если нетрудно добавьте
<meta charset="utf-8">

exec 25.03.2017 18:39

Фуух, как же я намучался с этими проклятыми окошками.

Происходит просто невозможное!

1)
var cursors = "n w s e ne se sw nw".split(" ");
// ...
this.style.cursor = dir == 8 ? "default" : cursors[ dir ] + "-resize";

В dir - число от 0 до 7 (направление ресайза) или 8 (ресайза нет).
То и дело присваивается cursor:undefined-resize, хотя это невозможно!

Делал проверку: if ( !cursors[dir] ) alert(dir); - выводит 8, и присваивает undefined-resize, как так-то?

2)
При добавлении resizable слетела работа с ajax. По идее выводится надпись "Загрузка...", ждём пока загрузится содержимое, надпись убираем, вставляем контент - кидает DOMException: NOT_FOUND_ERR.
Если убрать resizable - баг исчезает. Если resizable есть, но он не используется - бага тоже нет. Но стоит изменить размеры любого обычного окна, и потом открыть ajax-окно, баг появляется.

Как вообще resizable может влиять на ajax?

рони 25.03.2017 18:55

exec,
с кодировкой лучше стало :) .

непонятный глюк с шириной в ie
Dialog.pop()

строка
Dialog._fx(mainDiv, "width", 0, mainDiv.clientWidth, 300);
не хочет воспринимать mainDiv.clientWidth --- проверял значение - норма - 500 - ставишь 500 принудительно всё ок
Dialog._fx(mainDiv, "width", 0, 500, 300);

exec 25.03.2017 19:01

рони, какая версия IE?
mainDiv.clientWidth можно заменить на settings.width в принципе, ширина ведь всегда известна.

рони 25.03.2017 19:10

exec,
ie 11.953.14393.0 - тут глюк
в Microsoft Edge 38.14393.0.0 норма

рони 25.03.2017 19:12

Цитата:

Сообщение от exec
можно заменить на settings.width

если так то норма


Часовой пояс GMT +3, время: 00:06.