У меня есть следующий скрипт, который находится во внешнем файле, который вызывается вверху моей HTML-страницы. Идея состоит в том, что у меня есть запрос Ajax, проверяющий базу данных, когда база данных обновляется, Ajax видит это и вызывает функцию ниже. Он отлично работает в Firefox, но совсем не работает в IE. Есть предложения?
var GoPopUp = function(){
$('#PopNewCall').fadeIn('slow');
PageRefreshTimer();
}
//Function which refreshes page after a certain number of seconds with no user Inputs
var PageRefreshTimer = function(){
setTimeout("location.reload(true);",30000); //1,000 = 1 second
}
//Function which refreshes page after user has clicked refresh
var RefreshNow = function(){
setTimeout("location.reload(true);",0);
}
РЕДАКТИРОВАТЬ: Если кому-то интересно, я использую прямой javascript для ajax. Здесь это ниже. Я вызываю его при загрузке страницы, а затем он продолжает вызывать себя в цикле.
function checkRefresh(str)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
if (document.getElementById("lastCallID").innerHTML < xmlhttp.responseText)
{
setTimeout(GoPopUp(), 100);
}
else
{
setTimeout('checkRefresh()',15000)
}
}
}
xmlhttp.open("GET","getnewid.php",true);
xmlhttp.send();
}