2010-07-20 12 views
1

J'ai besoin d'un conseil sur la façon d'ajouter "Aller en haut" lien sur le bas de la page, mais seulement lorsque la page est plus longue que la taille du navigateur.Aller en haut de la page lien sur les longues pages

L'algorithme serait:

  • vérifier la hauteur de la page
  • calculer le pied de page et de la hauteur en-tête
  • comparer les tailles
  • trouvent dernier élément avant le pied de page (par exemple id)
  • insérer le lien au # menu principal

(Assumin g pur JavaScript, travaillant dans IE6 aussi. Je ne veux utiliser aucune bibliothèque JS.)

+0

il semble que vous soyez sur la bonne voie. Pouvez-vous poster votre code que vous avez essayé jusqu'à présent? –

Répondre

3

Hmm ... Je pense à détecter body.scrollTop! = 0, alors cela signifie que la page est plus haute que la fenêtre du navigateur. Je ferais toujours partie de la page "Go to top", mais son statut visible dépendrait de si body.scrollTop! = 0. Pour détecter si body.scrollTop! = 0, vous devriez interroger sa valeur toutes les 100ms disons, et que ce soit zéro, définissez la propriété d'affichage de votre objet "Go to top" sur "ou" none ".

L'élément "Go to top" ajoute peut-être un peu d'agacement à la hauteur globale de la page. Dans ce cas, l'utilisation de la propriété 'visibility' au lieu de 'display' pourrait être un meilleur choix.

EDIT: Juste trouvé (le lien possible de malware a enlevé), pourrait être utile si vous allez avec ce qui précède.