Промяна на времето при рефреш с ajax...

proba

Registered
Здравейте.
Намерих в google един скрипт за refresh с ajax тъй като в този тук, авторът е добавил излишен код до колкото видях.
Та въпросът е следният.
Имам файл refresh.js

function Ajax()
{
var $http,$self = arguments.callee;
if (window.XMLHttpRequest)
{
$http = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
try {
$http = new ActiveXObject('Msxml2.XMLHTTP');
}
catch(e)
{
$http = new ActiveXObject('Microsoft.XMLHTTP');
}
}
if ($http)
{
$http.onreadystatechange = function()
{
if (/4|^complete$/.test($http.readyState))
{
document.getElementById('bot_main').innerHTML = $http.responseText;
setTimeout(function(){$self();}, 30);
}
};
$http.open('GET', 'load.php' + '?' + new Date().getTime(), true);
$http.send(null);
}
}

index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>title</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
<script type="text/javascript" src="refresh.js"></script>
</head>
<body>
<div class="content">

<div class="menu">
title
</div>

<div class="main">
<script type="text/javascript">setTimeout(function() {Ajax();}, 30);</script>
<div class="bot_main" id="bot_main"></div>
</div>

</div>
</body>
</html>

А в load.php не мисля , че има значение какво има.
Та сега съм задал уж време 30 а то пак се refresh постоянно а не през 30 секунди..
Бихте ли ми казали как да го направя да се refresh-wa (обновява) информацията която е от load.php през 30 секунди или 60 няма значение , тъй като сега са зададени 30 но се обновява постоянно.
Предполагам грешката съм я направил аз докато съм променял кода (не крия) , но се надявам някой да помогне да я оправя ;)

EDIT:

Също така как би могла информацията от load.php да се извежда чрез ?page=1 , ?page=2 и т.н.

И ако може 1 линк за странициране да ми кажете как да направя за да може с ajax автоматично да се сменя страницата.
Да речем линкът просто да е


<а href="?page=страницата-1">Предишна</a>
<а href="?page=страницата+1">Следваща</a>

Но това ми е чудно как ще стане да взима сегашната страница, тъй като тя ще се праща до load.php чрез ajax и тук няма да може да се вземе с GET.
И когато страницата = $maxpages (в случая може да зададете за примера просто $maxpages=3 примерно или колкото решите) и тогава вместо линк да излиза просто надпис Следваща..
И когато Страницата е 1 тогава линкът Предишна пак да се заменя просто с надпис Предишна. ;)
 
Ами нормално да се рефрешва постоянно. Това 30 са ти милисекунди. Задай му 30000 и ще видиш, че ще се рефрешне след 30 секунди ;)



Останалото нямам време да го погледна, за да ти помогна, че трябва да тръгвам за работа. Иначе си погледни $http.open и оправи линка там.
 
Зададох му 30000 , но така чак след 30 секунди зарежда информацията..
Идеята е да я зареди веднага, но след това вече да я refresh през 30 секунди ?
 
При първоначалното извикване на функцията, няма нужда да използваш setTimeout, ако искаш да се изпълни веднага. Разбира се, би трябвало да си сигурен, че извикваш функцията чак когато файла се е заредил

Код:
<script type="text/javascript">
window.onload = Ajax;
</script>
 

Back
Горе