Удалить сообщение
Доброго дня всем, имеется такой вопрос. Есть вот такая вот функция, для отправки каких-нибудь сообщений пользователю.
function message(id, messageIcon, messageText, messageColor, messageAnim, animTime) { var constr = null; if (!isFree('elem2') && !isFree('elem3') && id != 3) return; if (id == 3) { constr = 'elem1'; } else if (isFree('elem2')){ constr = 'elem2'; } else if (isFree('elem3')) { constr = 'elem3'; } $('#' + constr).html('<i class="fa fa-' + messageIcon + ' fa-3x fa-pull-left"></i>' + messageText + '<i id="close" class="fa fa-close fa-pull-right"></i>').fadeIn(1000); document.getElementById(constr).onclick = function() { removeMessage(constr); } } Вопрос вот в чем, при клике на сообщение, мне необходимо его удалить (это реализовано) и больше не присылать. Сообщения шлю в таймере setInterval(function() { message(1, "gift", "test", "pink", false, 0); message(2, "music", "test2", "violet", false, 0); }, 10000) Сообщение закрывается, но через 10 секунд опять приходит. Как можно сделать так, чтоб сообщение, которое было кликнуто, больше не приходило? |
fear111,
Думаю надо почитать про функцию setInterval |
Цитата:
|
fear111,
Я вообще не понимаю зачем вам интервал?! Это разовое действие, для чего здесь нужен таймер, который запускает функцию каждые n миллисекунд? |
Цитата:
|
fear111,
Цитата:
Цитата:
|
Цитата:
Вы говорите, при нажатии должно закрыться и не приходить и следом опять должны все придти. В чем подвох? |
Цитата:
Объясняю, зачем мне интервал: у меня есть только 2 окошка под сообщения, но самих сообщений намного больше. Получается некая очередь, закрыл одно сообщение, на его место приходит другое. А у меня получается, что я закрываю и то же сообщение приходит опять, а должно быть следующее. Как то так. |
fear111,
Ну тогда создайте подобие очереди. Мое личное представление, создается DOM дерево с сообщениями, закрыли сообщение оно удалилось из дерево, а его место заняло сообщение, шедшее за ним, а если его надо возвращать, то добавляйте в самый конец дерева сообщений. Как-то так. |
Спасибо за ответ, я реализовал через массив, чтоб удалить, просто обнуляю значение, а в самой отправке условие.
|
Часовой пояс GMT +3, время: 16:14. |