2016-07-13 4 views
2

У меня есть два чата. Когда я получаю новое сообщение от других, заголовок окна чата, который должен мигать. Здесь я использовал socket.js для отправки и получения сообщений. На данный момент я могу пометить один чат. Но я не могу моргнуть эти чат-боксы одновременно с помощью этого таймера. Пример желаемого поведения можно найти в окне чата facebook или в окне чата. Я использовал таймер JavaScript, чтобы моргнуть в этом чат-поле на время.Как отключить окно чата в JavaScript?

JavaScript:

function start(){ 
    clearTimeout(this.backgroundInterval); 
    var $chatdivtoblink = $("#chat-header-window"); 
     this.backgroundInterval = setInterval(function(){ 
     $chatdivtoblink.toggleClass("backgroundRed"); 
    },1500) 
} 

function stop(){ 
    console.log("stop " + this.backgroundInterval); 
    clearTimeout(this.backgroundInterval); 
} 

CSS:

.backgroundRed { 
    background: #000; 
} 

HTML пример кода здесь:

<div class="chatElement chatBox" id="chatContainer-99"><div class="chat-header" id="chat-header-window"><div class="chat-header-content"></div></div> 

Образец изображения здесь, пожалуйста, посмотрите на него:

enter image description here

Вот моя реальная проблема заключается в, когда первое окно чата получает сообщение о неактивном. я запускаю таймер, чтобы моргнуть окно чата на время. то второе окно чата получает сообщение и запускает таймер. вот проблема, по которой таймер должен очищать интервал таймера? как я запускаю и останавливаю таймер для каждого окна окна чата?

ответ

0

Вы используете идентификатор, и из вашего описания я предполагаю, что у вас есть более одного элемента с тем же идентификатором. В этом случае вы должны использовать другой атрибут для таргетинга на чаты. Например, можно использовать класс:

HTML

<div class="chat-header-window"> 

Javascript

var $chatdivtoblink = $(".chat-header-window"); 
+0

привет человек. да, я использовал id, чтобы получить элемент окна чата. но у меня будет еще десять участников в будущем, например, в окне чата facebook, как я могу динамически открыть окно чата? –

+0

Предполагая, что 99 в вашем 'id =" chatContainer-99' - это идентификатор чата. Чтобы заставить элемент мигать, просто измените селектор на '$ (" # chatContainer- "+ id +" .chat-header-window ")' – ShuberFu

+0

да, я получил вас. Проблема с миганием. Предположите, что человек A, B, C. Человек C отправляет сообщение A и человеку B отправляет сообщение A. Как мне начать и остановить объект таймера? с ним. –

Смежные вопросы