
28.01.2010, 22:55
|
Новичок на форуме
|
|
Регистрация: 28.01.2010
Сообщений: 3
|
|
Загрузка контента по таймеру (без перезагрузки страницы)
Здравствуйте!
Задача следующая: есть некая страница на html с информацией А. Когда пользователь заходит на эту страницу, то через некоторое время (например, секунд 10) информация должна перезагрузиться и стать информацией B. Дальше никаких перезагрузок не предусмотрено.
Т.к. AJAX знаю плохо  а, имхо, он как раз способен решить эту задачу, прошу у вас помощи 
|
|

29.01.2010, 00:03
|
 |
Матрос
|
|
Регистрация: 04.04.2008
Сообщений: 6,246
|
|
Сообщение от Nordway
|
прошу у вас помощи
|
какой именно помощи?
на сайте есть куча полезных статей по ajax, которые помогут вам углубить ваши знания об ajax, и написать скрипт.по ходу дела, если будет не получатся,задавайте более конкретные вопросы
или вам нужен готовый скрипт? так это в раздел работа вам
|
|

30.01.2010, 13:46
|
Новичок на форуме
|
|
Регистрация: 29.01.2010
Сообщений: 3
|
|
разместите скрипт в Head`е:
document.getElementsByTagName('body')[0].onLoad=function(){setTimeout(reloader,10000)}; //При загрузке страницы инициализируется таймер на 10000 миллисекунд (10 секунд), по завершении которого выполнится функция reloader
function reloader(){
var Request=createRequestObject(); //Создание объекта запроса с помощью своей функции createRequestObject();
Request.open('GET','test.htm',true); //Открываем get-запрос. Test.htm - адрес странички, которую нужно подгрузить
Request.onreadystatechange=function(){ //Обработчик ответа
if(Request.readyState==4 && Request.status==200){ //Если запрос получен и ошибки не возникло
document.getElementById('id').innerHTML=Request.responseText //Заменяем HTML код внутри элемента с id, указанным вместо 'id' на код, полученный в результате запроса
}
}
Request.send(null) //Отправляем запрос без параметров
}
function createRequestObject()
{
if (XMLHttpRequest == undefined) {
XMLHttpRequest = function() {
try { return new ActiveXObject("Msxml2.XMLHTTP.6.0"); }
catch(e) {}
try { return new ActiveXObject("Msxml2.XMLHTTP.3.0"); }
catch(e) {}
try { return new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e) {}
try { return new ActiveXObject("Microsoft.XMLHTTP"); }
catch(e) {}
throw new Error("This browser does not support XMLHttpRequest.");
};
}
return null;
}
Вроде должно работать 
Последний раз редактировалось artli, 30.01.2010 в 13:48.
|
|

30.01.2010, 14:57
|
 |
NodeJS developer - ушел
|
|
Регистрация: 06.01.2010
Сообщений: 1,022
|
|
Либо вот так, в принципе тоже самое , что уже написали.
<script>
window.onload = function(){setTimeout(load('body','A.html'),10000);}
function load(where,what) // Ajax загрузка
{
var xml;
if(window.ActiveXObject){xml=new ActiveXObject("Microsoft.XMLHTTP");}
else if(window.XMLHttpRequest) {xml=new XMLHttpRequest();}
else {alert('Видимо в вашем браузере не поддреживается ajax');}
xml.onreadystatechange = function()
{
if(xml.readyState != 4 || xml.readyState==0){where.img('img/pb.gif');}
if(xml.readyState == 4)
{
if(xml.status == 200){where.text(xml.responseText);}
else{where.text("Error: returned status code " + xml.status + " " + xml.statusText);}
}
};
xml.open('GET', what, true);
xml.send(null);
}
</script>
<html>
<body id='body'>
А
</body>
</html>
__________________
Не вижу смысла в своём прибывании на форуме.
Всех достал.
Работу здесь я не найду - хотя не однократно пытался.
Знаний подчерпнуть тоже не могу.
Меняю пароль и адрес электронной почты, чтобы больше никого не доставать.
Всем удачи.
|
|

31.01.2010, 09:26
|
 |
NodeJS developer - ушел
|
|
Регистрация: 06.01.2010
Сообщений: 1,022
|
|
А еще глянь сайт, http://easywebscripts.net/
для понимая самое то.
__________________
Не вижу смысла в своём прибывании на форуме.
Всех достал.
Работу здесь я не найду - хотя не однократно пытался.
Знаний подчерпнуть тоже не могу.
Меняю пароль и адрес электронной почты, чтобы больше никого не доставать.
Всем удачи.
|
|

20.04.2011, 11:13
|
 |
Интересующийся
|
|
Регистрация: 19.01.2011
Сообщений: 18
|
|
Сообщение от mycoding
|
Либо вот так, в принципе тоже самое , что уже написали.
<script>
window.onload = function(){setTimeout(load('body','A.html'),10000);}
function load(where,what) // Ajax загрузка
{
var xml;
if(window.ActiveXObject){xml=new ActiveXObject("Microsoft.XMLHTTP");}
else if(window.XMLHttpRequest) {xml=new XMLHttpRequest();}
else {alert('Видимо в вашем браузере не поддреживается ajax');}
xml.onreadystatechange = function()
{
if(xml.readyState != 4 || xml.readyState==0){where.img('img/pb.gif');}
if(xml.readyState == 4)
{
if(xml.status == 200){where.text(xml.responseText);}
else{where.text("Error: returned status code " + xml.status + " " + xml.statusText);}
}
};
xml.open('GET', what, true);
xml.send(null);
}
</script>
<html>
<body id='body'>
А
</body>
</html>
|
Опера и хром выдают квадратики (проблема с кодировкой), а IE ошибку 403
|
|
|
|