2010-05-12 9 views
1

Disons que j'ai une page, http://mydomain.com/mypage.html, avec un lien "Retour à la page". Ce lien doit ramener l'utilisateur à la page d'où il provient uniquement si l'URL de la page précédente correspond à l'un des éléments suivants: http://mydomain.com/one.html, http://mydomain.com/two.html et http://mydomain.com/three.html. Sinon, l'utilisateur reviendrait à la page d'accueil, http://mydomain.com. Je voudrais que le lien "Retour à la page" ramène également l'utilisateur à la page d'accueil lorsque le http://mydomain.com/mypage.html est collé sur le navigateur. Comment puis-je accomplir cela avec Javascript. Merci!Javascript de détecter où la fenêtre nouvellement ouverte est venue

Répondre

1

Je pense que c'est une erreur d'essayer de le faire uniquement avec du code côté client. Premièrement, il n'y a aucun moyen fiable de savoir d'où vous venez. Pour être fiable, vos pages doivent passer par la page source quand elles sont liées à "mypage.html". De cette façon, le serveur peut déposer la page d'origine dans un champ caché, ou dans une variable Javascript, et ainsi de suite. Votre code peut être sûr que même si le navigateur de l'utilisateur est étrange, il a une bonne valeur.

0
if(document.referrer == 'http://mydomain.com/one.html' || document.referrer == 'http://mydomain.com/two.html') { 
    window.location = document.referrer; 
} else { 
    window.location = 'http://mydomain.com/'; 
} 

et

if(window.location == 'http://mydomain.com/mypage.html') { 
    window.location = 'http://mydomain.com/'; 
} 

mais comme d'autres l'ont dit, effectuer réoriente en utilisant une méthode côté client est pas une bonne façon de faire les choses.

Questions connexes