Page 1 sur 1

comment recupérer la valeur history.previous

Posté : 17 nov. 2006, 18:59
par coelinho
en faite je voudrais recupérer la valeur history.previous en valeur true/false si c'est possible
je la recupere dans une alert mais ce que je veu c'est le mettre dans un if

Code : Tout sélectionner

if( history.previous = quelque chose)

Posté : 17 nov. 2006, 19:07
par Ajoloca
Bonjour,

En JS les affectations se font a = b, mais les tests d'égalité se font par 'if (a == b)'

Posté : 17 nov. 2006, 19:11
par coelinho
c'était juste pour donner une idées de ce que je voulais faire.
mais si la valeur de history est undefined (comme il me met dans l'alert)
je dois mettre quoi à la place de "quelque chose"???

Posté : 17 nov. 2006, 19:19
par Ajoloca
Re,
Comme tu viens de le dire
valeur de history est undefined
tu devras tester cette valeur, sans oublier que c'est une chaine de cractères, ce qui te donnerai QQ chose du style

Code : Tout sélectionner

if( history.previous == 'undefined'){ ...... }

Posté : 17 nov. 2006, 19:39
par coelinho
en fait mon code en entier donne ca

Code : Tout sélectionner

var historik = history.previous; function Redirige(){ alert("history : " + historik); if( historik == "undefined") window.close(); else window.location.href="http://www.monsite.fr" }
mais la meme si historik est égal a rien il me redirige quand meme

Posté : 18 nov. 2006, 04:11
par Ajoloca
Re bonsoir,

J'ai répondu trop vite, je ne savais ce que souhaitais faire.
L'objet JS 'window.history' n'a pas de propriétés (ou sont interdites), on ne peu que lui appliquer des méhodes qui sont

Code : Tout sélectionner

length back() forward() go()
Deux petits exemples qui te feron mieux comprendre (exécute-les)
ess.html

Code : Tout sélectionner

<html> <head> </head> <body> <script type="text/JavaScript"> try{ for(prop in window.history){ document.write('Prop = ' + prop + ' val = ' + window.history[prop] + '<br />'); } }catch (error){ alert('ERREUR : ' + error); } document.write("Pages visit&eacute;es = " + window.history.length + '<br />'); </script> <a href="./ess1.html">Suivante</a> </body> </html>
ess1.html

Code : Tout sélectionner

<html> <head> </head> <body> <script type="text/JavaScript"> document.write("Pages visit&eacute;es = " + window.history.length + '<br />'); </script> </body> </html>
Dans ess.html tu vas tomber sur l'exception qui te donnera un message on ne peu plus explicite et te dira que c'est la première page visitée.
Si tu 'cliques' sur suivante tu véras que ce nombre (pages visitées) passe à 2.
Si tu recules d'une page, tu veras que ce chiffre redevient 1.

En conclusion : pour savoir le nombre de pages qui te restent dans l'historique tu utilises la méthode length comme ceci

Code : Tout sélectionner

if(window.history.length == 1){ message = "Plus de "; }else{ message = "Il reste " + (window.history.length - 1); } alert(message + " pages dans l'historique);

j'ai trouvé

Posté : 24 nov. 2006, 18:58
par coelinho

Code : Tout sélectionner

<script language="JavaScript" type="text/javascript"> function Redirige(){ if(window.history.length>=1) { window.location.href="http://www.monsite.fr"; } else { self.close(); } } </script>

Posté : 24 nov. 2006, 19:00
par coelinho
merci Ajoloca c grace a toi merci

Posté : 24 nov. 2006, 19:01
par zeus
Modération : Si ta question est résolue, pense à ajouter le tag [Résolu] pour indiquer aux personnes qui voudront consulter ce thread qu'il contient une solution.

Tu peux réaliser cette opération en cliquant sur le bouton [Résolu] en haut à gauche de ce thread.

Posté : 24 nov. 2006, 19:05
par coelinho
mais j'ai mis déja :shock:

Posté : 24 nov. 2006, 19:08
par zeus
euh :?
effectivement #-o
Maieuh ... c'était pour voir si tu suivais :mrgreen:
Désolé :oops:

Posté : 24 nov. 2006, 19:18
par coelinho
c pas grave je te pardonne lol :lol: :lol: