Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1199 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  défilement progressif vers un ID en JS

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

défilement progressif vers un ID en JS

n°1496114
papanorami​x
Posté le 26-12-2006 à 17:32:33  profilanswer
 

Bonsoir,
je cherche à faire un défilement vertical progressif vers un id quelque part dans la page).
 
Je m'explique:
bien souvent on voit un bouton "remonter" avec un simple <a href="#top">, seulement je trouve cette méthode un peu brutale pour l'internaute, surtout si on l'emmene au milieu d'une page.  :bounce:  
 
alors comment faire pour détecter la distance entre un id et le haut de la page en javascript ?  
J'ai bien essayé de faire un  

Code :
  1. return document.getElementById(id).pageYOffset


mais ça me retourne undefined.
 
Il me suffirait en effet de connaitre cette distance et avec un srollBy et un coefficient entre 0 et 1 pour une décélération je fais défiler la page jusqu'à l'id voulu.
 
Connaissez-vous un script qui permet ça ?
Connaissez-vous une équivalence à  

Code :
  1. return document.getElementById(id).pageYOffset


 
 :)

mood
Publicité
Posté le 26-12-2006 à 17:32:33  profilanswer
 

n°1496188
gatsu35
Blablaté par Harko
Posté le 27-12-2006 à 06:31:25  profilanswer
 

document.body.scrollTop = 0 ??

n°1496199
papanorami​x
Posté le 27-12-2006 à 09:07:10  profilanswer
 

Pour faire remonter la page tout en haut oui, mais si j'ai un id au milieu de ma page et que je pars du haut ?

n°1496217
papanorami​x
Posté le 27-12-2006 à 10:24:54  profilanswer
 

On a un exemple ici
pour le défilement progressif. (cliquer sur remonter)


Message édité par papanoramix le 27-12-2006 à 11:00:25
n°1496227
papanorami​x
Posté le 27-12-2006 à 10:43:15  profilanswer
 

En gros ma question est: comment retrouver la distance entre deux objets ? (grace à leurs ID si possible)

n°1513489
smougel
Posté le 12-02-2007 à 11:07:08  profilanswer
 

Tiens, c'est cadeau :
 
// Get the top pos of object
function GetTopPos(oElmt)
{  
 var returnValue = oElmt.offsetTop;
 while((oElmt = oElmt.offsetParent) != null)
 {
  if (oElmt.tagName != 'HTML') returnValue += oElmt.offsetTop;
 }
 return returnValue;
};
 
// Get the left pos of object
function GetLeftPos(oElmt)
{
 var returnValue = oElmt.offsetLeft;
 while((oElmt = oElmt.offsetParent) != null)
 {
  if (oElmt.tagName != 'HTML') returnValue += oElmt.offsetLeft;
 }
 return returnValue;
};
 
 
Tu appelles ces fonctions, avec en paramètre l'element sur lequel tu cherches la position.
Vérifie également le résultat de document.getElementById(), ça se trouve, ton élément n'est pas trouvé
J'utilise des fonctions similaires sur http://www.codes-de-reduction.fr pour trouver la position du champ de recherche en haut à droite et positionner une div juste en dessous.
 
Sinon je te conseille d'utiliser prototype, c'est un kit de dev en javascript qui te facilitera la vie.
 
Bon courage
 


Message édité par smougel le 12-02-2007 à 11:08:58
n°1513578
papanorami​x
Posté le 12-02-2007 à 14:16:37  profilanswer
 

ok, merci pour ces bons conseilles !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  défilement progressif vers un ID en JS

 

Sujets relatifs
Encore un pb de migration sqlserver et mysqlImporter fichier vers serveur
[ Résolu] [Cobol] chaîne vers numériquecreation hyperliens vers dossier [VBA - E]
transfert de données a partir du c++ vers ExcelPointeur vers un tableau multi dimensionnel de taille variable
Défilement d'images avec Flash MX (help !)ipconfig /all > Vers page html
Liens soft vers pages WebMATLAB - Toolbox R14 vers R2006B
Plus de sujets relatifs à : défilement progressif vers un ID en JS


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR