Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.12.2008, 14:39
Аспирант
Отправить личное сообщение для Nikitos* Посмотреть профиль Найти все сообщения от Nikitos*
 
Регистрация: 25.11.2008
Сообщений: 37

Обновление файла *.js по интервалу. Как ?
Друзья, есть страничка со следующим кодом

<script language=JavaScript src="http://pics.rbc.ru/js/rbc_b_w.js"></script>

далее рисую функции которые разбирают данные из этого скрипта и распихивают в нужные места.

Вопрос как не перегружая всей страницы обновлять только этот файл скрипта ? После этого обновляю необходимые места страницы (но это знаю как делать). То есть каким образом через JS загрузить файлик *.js чтобы использовать его содержимое ? Надеюсь понятно объяснил.
Ответить с цитированием
  #2 (permalink)  
Старый 04.12.2008, 14:41
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

var s = document.createElement('SCRIPT');
s.type = 'text/javascript';
s.src = 'http://pics.rbc.ru/js/rbc_b_w.js';
document.body.appendChild(s);
Ответить с цитированием
  #3 (permalink)  
Старый 04.12.2008, 15:20
Аспирант
Отправить личное сообщение для Nikitos* Посмотреть профиль Найти все сообщения от Nikitos*
 
Регистрация: 25.11.2008
Сообщений: 37

Хм .. в вашем варианте у меня почему-то не заработало, заработало вот в таком:
var headID = document.getElementsByTagName("head")[0];         
var s = document.createElement('SCRIPT');
s.type = 'text/javascript';
s.src = 'http://pics.rbc.ru/js/rbc_b_w.js';
headID.appendChild(s);


Но не суть ... а как мне теперь вызвать перезагрузку этого s.src ?
Ответить с цитированием
  #4 (permalink)  
Старый 04.12.2008, 15:20
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Для перезагрузки это все и делать. Можно периодически удалять элементы script из DOM.
Ответить с цитированием
  #5 (permalink)  
Старый 04.12.2008, 16:03
Аспирант
Отправить личное сообщение для Nikitos* Посмотреть профиль Найти все сообщения от Nikitos*
 
Регистрация: 25.11.2008
Сообщений: 37

хм ... подпихнул в цикл не работает, ну работает наверно только не обновляет данные а тянет видимо из кеша. Сделал так

s.src = "http://deceit.narod.ru/rbc_b_w.js" + "?" + Math.random();


Заработало как надо. Вопрос , это нормальное решение ? И можно написать как чистить данные в DOM? К сожалению не силен в JS ... так хобби.
Ответить с цитированием
  #6 (permalink)  
Старый 04.12.2008, 16:16
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Nikitos*
Вопрос , это нормальное решение ?
Да.

Сообщение от Nikitos*
как чистить данные в DOM?
function removeNode(el) {
  el.parentNode.removeChild(el);
}
Ответить с цитированием
  #7 (permalink)  
Старый 04.12.2008, 16:24
Аспирант
Отправить личное сообщение для Nikitos* Посмотреть профиль Найти все сообщения от Nikitos*
 
Регистрация: 25.11.2008
Сообщений: 37

Премного благодарен !
Ответить с цитированием
  #8 (permalink)  
Старый 04.12.2008, 17:38
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

Можно как-нибудь вот так:
setInterval(function() {
    if (arguments.callee.script) {
        arguments.callee.script.parentNode.removeChild(arguments.callee.script);
    }
    arguments.callee.script = document.createElement("SCRIPT");
    arguments.callee.script.src = "http://deceit.narod.ru/rbc_b_w.js" + "?" + Math.random();
    arguments.callee.script.type = "text/javascript";
    document.getElementsByTagName("head")[0].appendChild(arguments.callee.script);
}, 5000);
Ответить с цитированием
  #9 (permalink)  
Старый 05.12.2008, 09:05
Аспирант
Отправить личное сообщение для Nikitos* Посмотреть профиль Найти все сообщения от Nikitos*
 
Регистрация: 25.11.2008
Сообщений: 37

Спасибо , тоже вариант.
Есть мысль написать скрипт который будет выполняться в определенное время (обновлять данные с инета), например в 13-00, если соединение с инетом есть то загрузить данные и ждать следующих 13-00, если соединения в данный момент нет, то вывести текст с ошибкой подождать заданный интервал и пробовать снова и т.д.

Если у кого-нибудь есть немного времени и мысли как это можно организовать, буду очень благодарен за помощь. Ученье - свет
Ответить с цитированием
  #10 (permalink)  
Старый 05.12.2008, 09:09
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

var img = new Image();
img.src = 'путь к заведомо существующей картинке';
img.onload = function() {
  alert('Есть интернет');
};
img.onerror = function() {
 alert('Нет интернета');
};
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Постоянное обновление страницы. Как? ratt Общие вопросы Javascript 9 13.10.2010 02:55
Переодическое обновление таблицы demi AJAX и COMET 0 30.11.2008 08:45
форма как в ExtJS 2 magistr_bender Общие вопросы Javascript 0 11.09.2008 16:01
Раскрывающееся меню, как переставить на другую сторону? Resager Events/DOM/Window 8 22.08.2008 21:56
Цикличное обновление страницы Roman_kstu Общие вопросы Javascript 7 29.05.2008 05:55