По сути, я пытаюсь сделать так, чтобы в углу моей страницы было всплывающее окно с появлением / исчезновением.например, Джон Доу только что вышел в сеть.Я использую AJAX для проверки последних обновлений, если они новые, отобразите всплывающее окно.
Функция отображения всплывающего окна (с помощью jquery):
function hidepop(){
$("#popup").fadeOut("slow");
}
function showpop(){
$("#popup").fadeIn("slow");
setTimeout("hidepop()",4000);
}
Код дляобновите и покажите всплывающее окно, если необходимо:
function getHTTPObject(){
if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest) return new XMLHttpRequest();
else {
alert("Your browser does not support AJAX. Please download Google Chrome or Firefox.");
return null;
}
}
function checkUpdates(old){
httpObject = getHTTPObject();
var randomnumber=Math.floor(Math.random()*10000);
if (httpObject != null) {
link = "updates.php?rnd="+randomnumber;
httpObject.open("GET", link , true);
httpObject.onreadystatechange = function() {
if(httpObject.readyState == 4){
var response = httpObject.responseText;
var objDiv = document.getElementById("popup");
objDiv.innerHTML = response;
if(response == old){
var time = setTimeout(function(){checkUpdates(response); response = null},5000);
}else{
var objDiv = document.getElementById("popup");
objDiv.innerHTML = response;
showpop();
var time = setTimeout(function(){checkUpdates(response); response = null},5000);
}
}
}
}
}
Затем, чтобы начать все это:
onload="checkUpdates('');"
на теге body.
Итак,моя проблема ... ничего не происходитЯ знаю, что показ всплывающего окна работает, потому что если я вызову showpop (), он покажет.
Возможно, это какая-то глупая ошибка, но не могли бы вы дать мне несколько идей / указателей на то, в чем может быть проблема и какисправить это.
Большое спасибо, Калум.