powered by simpleCommunicator - 2.0.48     © 2025 Programmizd 02
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Посоветуйте как передать данные в обновляемую страницу HTML
6 сообщений из 56, страница 3 из 3
Посоветуйте как передать данные в обновляемую страницу HTML
    #40107779
Andi_WEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Можно попробовать так
Попробовал, работает один раз, если я прямо редактирую данные "0,45597925479523" в отладчике. До первого обновления данных с сервера.
...
Рейтинг: 0 / 0
Посоветуйте как передать данные в обновляемую страницу HTML
    #40107781
Andi_WEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> откуда послал?

Из простого TCP клиента как GET-запрос серверу. Ну API у него такой, что он запоминает эту строку, а потом может вставить в конец страницы.
...
Рейтинг: 0 / 0
Посоветуйте как передать данные в обновляемую страницу HTML
    #40108125
Andi_WEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую!
А есть какое-то логическое объяснение, почему этот код именно так работает и после многократных обновлений данных на по AJAX странице.

Но как работает - только если НАПРЯМУЮ редактировать в отладчике браузера на вкладки "Элементы" значения в элементе id='tcp_cb'.
Если данные приходят с сервера, то в отладчике я вижу, что ВИЗУАЛЬНО они меняются именно также, но событие не возникает. Однако, благодаря работающему таймеру, если опять менять значения в отладчике, то как бы все работает.

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
var timerId;
var Values_div;
var observer;
var Dataset_Values;
var Old_Values;

function Check_Values (mutations) { 
  Dataset_Values= mutations[0].target;
  if (Old_Values!=Dataset_Values.dataset.columns)
      { 
       Old_Values=Dataset_Values.dataset.columns;
       alert(Dataset_Values.dataset.columns); // Выводим обновленное значение первой переменной
      }
        }

function Init_Observer() // Инициализация "наблюдателя" за изменениями
{
 Values_div = document.getElementById('tcp_cb');
 observer = new MutationObserver(Check_Values);
 observer.observe(Values_div, {attributes: true});   
}



function Create_Timer() 
{
 timerId=window.setInterval(Proxy_Function, 500); // Вызываем вспомогательную функцию
}


function Proxy_Function() 
{
 Init_Observer();
}


document.addEventListener("DOMContentLoaded", Create_Timer);
...
Рейтинг: 0 / 0
Посоветуйте как передать данные в обновляемую страницу HTML
    #40108150
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andi_WEB
Если данные приходят с сервера,
что приходит с сервера?
...
Рейтинг: 0 / 0
Посоветуйте как передать данные в обновляемую страницу HTML
    #40108186
Andi_WEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кажется начинает прояснятся. При ручном изменении в отладчике менятся 'attributes' и target - div tcp_cb.

А вот по приходу данных от сервера, которые на глаз в отладчике приводят к тем же рузультатам, меняется-то другое, а именно 'childList' ! Да еще и таргет другой. Ну будем думать дальше...
...
Рейтинг: 0 / 0
Посоветуйте как передать данные в обновляемую страницу HTML
    #40108197
Andi_WEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем, все заработало. MutationObserver - сила!

И, кстати, работает и при такой концовке:

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
function Proxy_Function() 
{
 Init_Observer();
  window.clearInterval(timerId); // Останавливаем таймер
}


document.addEventListener("DOMContentLoaded", Create_Timer);



Теперь никакого периодического тайминга.
...
Рейтинг: 0 / 0
6 сообщений из 56, страница 3 из 3
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Посоветуйте как передать данные в обновляемую страницу HTML
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]