Je souhaite exécuter un nombre particulier d'instructions après un certain délai. Pour exemple:Comment retarder l'appel d'une fonction en javascript?
function findPosX(obj) {
var curleft = 0;
if (obj.offsetParent) {
while (1) {
curleft += obj.offsetLeft;
if (!obj.offsetParent) {
break;
}
obj = obj.offsetParent;
}
} else if (obj.x) {
curleft += obj.x;
}
return curleft;
}
function findPosY(obj) {
var curtop = 0;
if (obj.offsetParent) {
while (1) {
curtop += obj.offsetTop;
if (!obj.offsetParent) {
break;
}
obj = obj.offsetParent;
}
} else if (obj.y) {
curtop += obj.y;
}
return curtop;
}
function gotoDiv(index) {
var ele = document.getElementById("Div" + index);
var x = findPosX(ele);
var y = findPosY(ele);
setTimeout("window.scrollTo(x, y)", 5000);
}
Ici, je veux régler la position de défilement actuelle à un prticular div. Mais il me donne l'erreur: x est indéfini. Laissez-moi vous dire si j'utilise les fonctions ci-dessous cela fonctionne très bien, alors s'il vous plaît ne me dites pas que ele est nul et bla bla bla.
function gotoDiv(index) {
var ele = document.getElementById("Div" + index);
var x = findPosX(ele);
var y = findPosY(ele);
window.scrollTo(x, y);
}
Toute aide appréciée.
ele étant nul ne sera probablement pas causer x étant non définie, je pense que natrium a cette solution, mais vous devriez vérifier ele pour null cependant;) je suis sûr que vous avez simplement simplifié le code ici et vous le faites déjà dans votre code;) – dharga