hab mal wieder eine frage zu ajax.
und zwar mach ich eine einfache abfrage, alle 5 sekunden.
das klappt auch gut

jetzt möchte ich ein fade einbauen, dass aber nur erscheint, wenn der wert sich geändert hat. die function, und der fade steht schon, leider fadets aber all 5 sek xD
ich hoff, der folgende text ist nicht zu lang, sonst einfach schnell melden, und nicht gleich sperren, danke

Code: Alles auswählen
function setOpacity( value ) {
document.getElementById("msg_alert").style.opacity = value / 10;
document.getElementById("msg_alert").style.filter = 'alpha(opacity=' + value * 10 + ')';
}
function fadeIn() {
for( var i = 0 ; i <= 100 ; i++ )
setTimeout( 'setOpacity(' + (i / 10) + ')' , 8 * i );
}
function load_priv_msg()
{
var xhr;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e)
{
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2)
{
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
}
xhr.onreadystatechange = show_msg;
xhr.open('GET', 'ajax_files/priv_msg.php', true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.send(null);
function show_msg()
{
if(xhr.readyState == 4)
{
if(xhr.status == 200)
{
if (xhr.responseText > 0)
{
document.getElementById('msg_alert').style.display = 'block';
fadeIn();
if (xhr.responseText < 10)
{
document.getElementById('msg_alert').innerHTML = '<span style="margin-left: 3px;">' + xhr.responseText + '</span>';
}
if (xhr.responseText > 10)
{
document.getElementById('msg_alert').innerHTML = xhr.responseText;
}
}
}
}
};
setTimeout("load_priv_msg()",5000);
}