[js]création de div et lui donner le focus ?

Résolu
waltou -  
 waltou -
Bonjour à tous,

Je viens vers vous car j'ai un petit souci avec javascript.

En faite je crée un div au clic sur un bouton, jusque là pas de souci, le div est créer ainsi que son contenu, mais voilà mon problème est que si je suis en bas de la page le div ce crée en haute de la page en position absolute, ca hauteur n'étant pas fixe, je ne peut lui définir un position précise, ce que j'aimerai c'est donner le focus à ce div, je suis en bas de la page, je clic sur le bouton et hop il crée le div et remonte le visiteur sur le haut de la page

voici ma fonction qui crée le div
function newWin(newId,title,clsHTML){
    if(document.getElementById(newId)){ destroy(newId); }
    
    var idDiv = (newId != "") ? newId : "Undefined";
    var div = document.createElement('div');
    div.setAttribute('id',idDiv);
    if(clsHTML != ""){
        div.setAttribute("class",clsHTML); // => gecko
        div.setAttribute("className",clsHTML); // => IE
    }
    document.body.appendChild(div);
}


j'ai essayer de faire un focus après le appendChild sur le div mais ca ne fonctionne pas
document.body.appendChild(div);
document.getElementById(idDiv).focus();


J'ai essayer le système d'ancre, placé en haute de la page un
<a name="top"></a>


et avec en js la commande document.location
appendChild...
document.location = '#top';


Mais encore une fois sans succès, certe je voi le #top qui apparait dans la barre d'adresse mais le visiteur reste en bas de la page :s

Si quelqu'un pouvait m'aider je le remercie d'avance
Donc en clair, comment donner le focus sur le div qui vient d'être créer en JS

d'avance merci de votre aide
A voir également:

3 réponses

coeus Messages postés 3021 Date d'inscription   Statut Membre Dernière intervention   119
 
Si tu essayais :
window.scrollTo(0,0);

(ou scrollTo(x,y) de ton choix) ?
2
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Salut.

Tu peux utiliser object.offsetTop pour savoir la position de l'objet object.
Ensuite, il suffit de scroller jusqu'à cette position avec scrollTo()
2
coeus Messages postés 3021 Date d'inscription   Statut Membre Dernière intervention   119
 
Ah super, je cherchais justement cette propriété ! Merci avion-f16, tu as fait d'une pierre deux coups ! :-)
0
waltou
 
merci a vous, ca convient parfaitemen à ce que je cherchait :D

encore merci beaucoup
1