Comment aller à une div qui a placé en bas de page à l'aide de JavaScript?
J'ai un div qui situé en bas de la page:
<div id="myDiv"></div>
Je veux aller à cette div après l'exécution de mon JS-fonction. En d'autres termes, je veux avoir mon url devenir myurl#myDiv
et d'aller à mon div. Mais sans recharger la page. Comment cela peut être fait à l'aide de JavaScript? Malheureusement je n'ai pas trouvé de solution pour ce problème. Je ne suis pas à l'aide de toute JS-bibliothèques et frameworks.
David réponse est la meilleure solution, avec tout élément du DOM (avec ou sans ID) peuvent être affichés dans la vue. Avec ma réponse vous ne pouvez faire défiler jusqu'à un ID/ancre sur la page.
OriginalL'auteur Michael | 2012-09-05
Vous devez vous connecter pour publier un commentaire.
Essayer le réglage de la fenêtre de l'emplacement de celui de l'ID. Le navigateur va alors faites défiler jusqu'à l'élément.
Ouais, vous avez raison. Toutefois, il a fait un travail avec
location.href
dans un bref test—si IE serait probablement étouffer.OriginalL'auteur Robert K
Pour faire défiler jusqu'à un élément en particulier, l'utilisation, la scrollIntoView, pris en charge par IE6+ et de vrais navigateurs:
Vérifier
window.location.hash
sur DOMReady, pour voir si il y a un hash de l'URL correspondant à un élément dans votre document.Si il y a
#myDiv
liens dans le document, vous devez ajouteronclick
auditeurs à eux, effectuer les faire défiler manuellement, comme dans le code ci-dessus, etreturn false
pour éviter de suivre le lien pour#myDiv
.Démo
IE6+ and real browsers
: vous avez raison, c'est à dire 6 n'est pas un vrai navigateur dans cette journée et l'âge plus 😉OriginalL'auteur David Hedlund
La scrollIntoView(vrai) méthode accepte un paramètre spécifie si les aligner vers le haut (true) ou bas (false).
OriginalL'auteur Ben Ripley