В процессе работы пользователь создает новый элемент дерева в DOM, пытаюсь соединить данный элемент и socket.io, но ничего не выход, а когда этот элемент статический, то все работает. В чем проблема? Использую в стороне сервера:
io.sockets.on('connection', function (socket) {
// Клиент подключен
socket.emit('chat', { zeit: new Date(), text: 'Теперь вы подключены к серверу!' });
// Отправка текста клиентом
socket.on('chat', function (data) {
// Передача текста всем клиентам в чате
io.sockets.emit('chat', { zeit: new Date(), name: data.name || 'Anonym', text: data.text, x: data.x, y: data.y });
});
});
а на стороне клиента:
//*******************SOCKET*************************
// WebSocket
var socket = io.connect();
// Новое сообщение
socket.on('chat', function (data) {
var zeit = new Date(data.zeit);
contentId.append(
$('<li></li>').append(
// Время дня
$('<span>').text('[' +
(zeit.getHours() < 10 ? '0' + zeit.getHours() : zeit.getHours())
+ ':' +
(zeit.getMinutes() < 10 ? '0' + zeit.getMinutes() : zeit.getMinutes())
+ '] '
),
// Имя
$('<b>').text(typeof(data.name) != 'undefined' ? data.name + ': ' : ''),
// Текст
$('<span>').text(data.text))
);
// Прокрутка списка вниз
//$('body').scrollTop($('body')[0].scrollHeight);
});
//*******************SOCKET*************************
//...
// Отправка сообщения
function senden(){
// Чтение полей ввода
var name = nameId.val();
var text = editorId.val();
//*******************SOCKET*************************
// Отправка сокета
socket.emit('chat', { name: name, text: text });
//*******************SOCKET*************************
// Установка пустого текста
editorId.val('');
}
По сути , мне надо динамически создавать комнаты и отобразить в них новый поток сообщений.