Forklaring på AJAX kode
Hejsa fandt noget kode som jeg kunne bruge her: http://www.eksperten.dk/spm/747578 - men vil også gerne forstå den, så hvis een ville forklare mig den ville jeg blive glad (måske b_ eller olebole ;))Koden er her:
var xmlHttp;
var posX;
var posY;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new window.XMLHttpRequest();
}
}
function startRequest(test_id, event) {
posX = mouseX(event);
posY = mouseY(event);
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", "hent_detaljer.php?id="+test_id, true);
xmlHttp.send(null);
}
function handleStateChange() {
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
//alert("Serveren svarede: "+ xmlHttp.responseText);
createDivElement(xmlHttp.responseText);
}
}
}
function createDivElement(text) {
removeDivElement();
var textElem = document.createTextNode(text);
var elem = document.createElement("div");
elem.setAttribute("id", "detaljer");
elem.appendChild(textElem);
var parentElem = document.getElementById("test");
parentElem.appendChild(elem);
document.getElementById("detaljer").style.width = "200px";
document.getElementById("detaljer").style.position = "absolute";
document.getElementById("detaljer").style.backgroundColor = "#ccccff";
document.getElementById("detaljer").style.border = "1px solid black";
document.getElementById("detaljer").style.padding = "10px";
document.getElementById("detaljer").style.fontSize = "11px";
document.getElementById("detaljer").style.left = posX+"px";
document.getElementById("detaljer").style.top = posY+"px";
}
function removeDivElement() {
if (document.getElementById("detaljer")) {
var elem = document.getElementById("detaljer");
var parentElem = document.getElementById("test");
parentElem.removeChild(elem);
}
}
function mouseX(evt) {
return evt.clientX;
}
function mouseY(evt) {
return evt.clientY;
}
