Создайте виджет окна для чата.
Окно — это DIV, который можно переносить, взявшись за заголовок. По нажатию на «Послать» данные передаются в содержание окна.
Посмотреть пример в новом окне.
Синтаксис:
new DraggableWindow("Чат с Петей");
- Возможно появление прокрутки внутри окна, если сообщений много. Сообщения не должны вылезать вовне окна.
- Окно нельзя вытащить за пределы экрана, даже резкими движениями мыши. Влево-вправо-вверх оно вообще не должно вылезать за границу, а вниз — только до заголовка. Попробуйте перемещать его в
примере, чтобы увидеть. - Для задания DOM-структуры окна используйте шаблон. Может быть создано несколько окон.
Исходный документ: tutorial/browser/dnd/window-src/index.html
Подсказки
Решение
Подсказки
- Так как высота и ширина окна известны, вёрстка внутри может содержать точные пиксельные размеры.
- При обработке события
document.onmousemove, мы вычисляем новые координатыleft/topи смотрим, вылезает ли окно за границы. Если да — меняемleft/topна максимально возможные, чтобы не вылезало. - На форме вешаем обработчик
onsubmit, т.к. иначе Enter в поле отправить её на сервер.
Решение
#439