Как я могу изменить данные тега динамически после некоторой определенной задержки с использованием JavaScript?

StackOverflow https://stackoverflow.com/questions/9341298

Вопрос

Я хочу только изменить <p> Содержание тегов с использованием JavaScript после определенной задержки времени. Например

<p>messages</p>

должен измениться в зависимости от нет. новых сообщений пришли. В качестве

<p>messages(1)</p>
<p>messages(2)</p>
Это было полезно?

Решение

Написать свой <p> в качестве:

<p class="messages">messages</p>

Ваш JavaScript:

function updateMessages() {
    var ps = document.getElementsByClassName("messages");
    for(var i = 0, len = ps.length; i < len; i++) {
        ps[i].innerHTML = "messages (" + messageCount + ")";
    }
}

setTimeout(updateMessages, 1000);

Где 1000 это количество миллисекундов, чтобы задержать.

Или если вы хотите периодически делать это каждый 15 секунды, вы можете использовать setInterval:

setInterval(updateMessages, 15000);

ОБНОВИТЬ:

Я вижу ваш комментарий выше:

Новые сообщения извлекаются из базы данных с использованием функции JSP, которая проверяет базу данных для новых сообщений

В этом случае я понимаю, что вы хотите периодически получать этот URL -адрес? Если вы уже используете фреймворк JavaScript, я предлагаю вам посмотреть их AJAX документация.

Другие советы

$(document).ready({
 function updatePara() {        
      $('p').html('Content to set in para');
    }
 });

setTimeout(updatePara, no.of milisecond to delay);

JQuery сделает манипуляции DOM намного простыми :) Приведенный выше код изменяет содержание всего абзаца, так что лучше дать желаемый пункт <p></p> Некоторое имя вызова затем отфильтруйте пара $('p.classname').html('your content') ИЛИ ЖЕ $('.classname').html('Your content')
jQuery это потрясающе !!! :)

Вы можете использовать функцию SetTimeout:

var delay = 1000; // 1 second
setTimeout(function() {
  var pNodes = document.getElementsByTagName('p');
  for (var i=0, length=pNodes.length; i < length; i++) {
    pNodes[i].innerHTML = pNodes[i].innerHTML+"("+ (i+1) +")";
  }
}, delay);

getElementsByTagName используется, например. Способ извлечения Pnodes зависит от структуры вашего HTML -кода.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top