Comment l'empêcher de sauter sur un point d'ancrage cliquez sur?
- Je utiliser e.preventDefault();
de désactiver par défaut l'ancre comportement.
Est-il un moyen de prévenir uniquement saut d'action à une cible cliquez sur?
J'ai essayé:
var hash = window.location.hash;
var link = $('a');
$('a').click(function() {
e.preventDefault();
hash = "#"+link.attr("href");
});
Mais ça ne fonctionne pas: http://jsfiddle.net/ynts/LgcmB/.
OriginalL'auteur A. Z. | 2013-01-06
Vous devez vous connecter pour publier un commentaire.
Vous devez également spécifier l'événement argument dans la fonction. En le nommant comme
e
ouevent
et puis vous pouvez le manipuler.heheheh 😛 je ne manquerez jamais descriptions dans mes réponses 😀
Malheureusement, il n'y a pas de saut de l'action et pas l'url de mise à jour. Je veux avoir
jsfiddle.net/ynts/Jgkmt/embedded/result/#anchor
après cliquez sur.édité ma réponse 😀 Il ne peut pas travailler dans le jsFiddle, car ils utilisent les iframes!
Une fois
window.location
est définie, un saut à#anchor
qui se passe :(.OriginalL'auteur Muhammad Talha Akbar
C'est la seule solution que je pouvais venir qui fonctionne de manière cohérente à travers tous les postes de travail mobiles et des navigateurs avec diverses client de l'INTERFACE utilisateur des bibliothèques et des structures. En obtenant la fenêtre coordonnées avant le défilement se produit, nous pouvons rétablir et de maintenir la position de défilement actuelle.
OriginalL'auteur TaeKwonJoe
À seulement éviter le "jump", vous devez utiliser différents id de l'élément cible, que ce qui est spécifié dans l'ancre.
par exemple, pour un lien vers un nouvel onglet,
et pour la cible de l'élément de masque de l'id
Ensuite, dans votre script, ajouter le masque le réel de hachage, et l'utiliser pour obtenir l'élément.
Cela préserve la valeur de hachage modifications de l'emplacement dans l'historique du navigateur qui peut être contrôlé par les boutons suivant/précédent, et détecté sur la page de chargement avec le
hashchange
cas si l'utilisateur entre dans la page avec de hachage spécifié.Assez élégamment fait
Très utile dans des circonstances différentes. E. g. définir une valeur de type boolean au chargement de la page, modifier le point d'ancrage, de prévenir le saut. Après chargement de la page gérer les clics sur l'intérieur des ancres comme d'habitude.
OriginalL'auteur jumois
Vous devez lier un événement onclick d'ancrage et de spécifier
return false;
.Le
return false;
instruction provoque par défaut, cliquez sur les comportements (saut) ne fonctionnerait pas.Vous pouvez trouver plus d'infos ici: Comment faire pour désactiver l'ancre "sauter" lors du chargement d'une page?
$("a[href='#']").on('click', function(event) { return false; });
OriginalL'auteur Sergei Smirnov
Vous avez besoin de passer l'événement sur la fonction.
Mais votre effort!
Ouais, alors que j'etais en train de taper, j'en ai vu une autre réponse a été posté. Bonne réponse Aspirant Aqib.
eh bien, je ne comprends pas pourquoi je reçois épuisé tout en répondant si je vois quelqu'un d'autre ont également répondu. "1 nouvelle réponse à cette question. Cliquez pour Charger". 😀
OriginalL'auteur AgnosticDev