Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

appelle fonction après chargement

4 réponses
Avatar
steeve_dun
Bonjour,
Je voudrais faire un appel =E0 une fonction apr=E8s avoir demander le
rechargement de la page.
J'essaye ce qui suit mais sans succ=E8s.

<script language =3D"javascript">
function carre(num){
cube=3Dnum*num;
}
document.write("le carr=E9 est " carre(j)+" <br>");
</script>
<a href onclick=3D"javascript:location.reload() ; carre(10)"> test</a>


Merci de votre aide.
-steeve

4 réponses

Avatar
Mickaël Wolff
a écrit :
Je voudrais faire un appel à une fonction après avoir demander le
rechargement de la page.



Tu ne peux pas. La raison est simple : lors du rechargement de la
page, tout l'environnement javascript est remis à zéro, tu te retrouves
donc dans un environnement tout neuf. C'est comme lors qu'en C tu fais
un exit, tout ce qui suit est ignoré.

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
Avatar
Pascal PONCET
a écrit :
Je voudrais faire un appel à une fonction après avoir demander le
rechargement de la page.



Bonjour,

La réponse de Mickaël est pertinente.
Toutefois, il faut ajouter que "location.reload()" a exactement le même
effet que "location.href = 'url_en_cours'".

Donc, pour passer un nouveau paramètre au document, qui soit exploitable
par un script, il suffit d'écrire :
"location.href = 'url_en_cours?param=valeur'"
Ensuite, on récupère dans le script "location.search" qui prendra la
valeur "?param=valeur", etc.

Pour le reste, il va falloir sérieusement lire quelques ouvrages de
référence avant d'aller plus loin. Etre débutant n'est pas une tare,
mais demander une explication de texte quand on ne maîtrise pas
l'alphabet, c'est exagéré.

Alors, rapidement :

<script language ="javascript">



Ce n'est pas une erreur, mais il vaut mieux écrire :
<script type="text/javascript">
Ou même <script> tout court, car c'est le type par défaut pour tout
navigateur.
On rajoute "language=..." seulement si on veut gérer la version du
langage, mais c'est tombé en désuétude.

function carre(num){
cube=num*num;



Définir une variable sans le mot-clé déclaratif "var" étend sa portée à
l'ensemble du document. C'est exactement comme écrire "window.cube=...".

}



A ce stade, la fonction se contente de définir la variable "cube", point
final. Si on veut un retour, il faut le rendre explicite avec, par
exemple, "return cube".

document.write("le carré est " carre(j)+" <br>");



Où est définie la valeur de "j" ?

</script>
<a href onclick="javascript:location.reload() ; carre(10)"> test</a>



Même chose que plus haut, la mention "javascript" n'est pas nécessaire.
De plus, c'est ici qu'on fera appel à "location.href=...".

Merci de votre aide.



A condition de relever les manches !

Cordialement,
Pascal
Avatar
SAM
Le 11/4/08 11:51 AM, Pascal PONCET a écrit :
a écrit :

<a href onclick="javascript:location.reload() ; carre(10)"> test</a>



Même chose que plus haut, la mention "javascript" n'est pas nécessaire.
De plus, c'est ici qu'on fera appel à "location.href=...".



Là on a un coup de bol :
- le onclick demande de recharger la page
- sinon il eût fallu annuler le lien html
<a href="truc.htm" onclick="alert('coucou'); return false;">
^^^^^^^^^^^^

On peut aussi se poser la question du bien fondé du code proposé
<a href onclick="javascript:blabla()">
était-ce que steeve voulait écrire :
<a href="#" onclick="return blabla()">
ou :
<a href="javascript:blabla()">

Merci de votre aide.



A condition de relever les manches !



Le JavaScript, les bases old-fashion (1999/2002) :
<http://pagesperso-orange.fr/chatinais/coursjs/somrjs.htm>
<http://www.cybwarrior.com/FR/JavaScript-Introduction-au-JavaScript.html>
Un peu moins vieux :
<http://fr.selfhtml.org/javascript/index.htm>
<http://fr.selfhtml.org/navigation/recherche/index.htm>
Quelques 'trucs' (en pas français) chap 4 et 5 :
<http://jibbering.com/faq/>
Autre :
<http://jacques-guizol.developpez.com/javascript/>
Le DOM (Document Object Model) :
<http://fr.wikipedia.org/wiki/Document_Object_Model>
<https://developer.mozilla.org/en/Gecko_DOM_Reference>
<https://developer.mozilla.org/fr/R%C3%A9f%C3%A9rence_du_DOM_Gecko>
En pas français :
<http://www.oreillynet.com/topics/javascript/scripting>

etc ...

--
sm
Avatar
steeve_dun
Merci à vous tous pour vos réponses et remarques extrêmement
pertinentes !
-steeve


On 4 nov, 14:15, SAM
wrote:
Le 11/4/08 11:51 AM, Pascal PONCET a écrit :

> a écrit :

>> <a href onclick="javascript:location.reload() ; carre(10)"> test</a>

> Même chose que plus haut, la mention "javascript" n'est pas nécessa ire.
> De plus, c'est ici qu'on fera appel à "location.href=...".

Là on a un coup de bol :
- le onclick demande de recharger la page
- sinon il eût fallu annuler le lien html
    <a href="truc.htm" onclick="alert('coucou'); return false;">
                                                 ^^^^^^^^^^^^

On peut aussi se poser la question du bien fondé du code proposé
     <a href onclick="javascript:blabla()">
était-ce que steeve voulait écrire :
    <a href="#" onclick="return blabla()">
ou :
    <a href="javascript:blabla()">

>> Merci de votre aide.

> A condition de relever les manches !

Le JavaScript, les bases old-fashion (1999/2002) :
<http://pagesperso-orange.fr/chatinais/coursjs/somrjs.htm>
<http://www.cybwarrior.com/FR/JavaScript-Introduction-au-JavaScript.html>
Un peu moins vieux :
<http://fr.selfhtml.org/javascript/index.htm>
<http://fr.selfhtml.org/navigation/recherche/index.htm>
Quelques 'trucs' (en pas français) chap 4 et 5 :
<http://jibbering.com/faq/>
Autre :
<http://jacques-guizol.developpez.com/javascript/>
Le DOM (Document Object Model) :
<http://fr.wikipedia.org/wiki/Document_Object_Model>
<https://developer.mozilla.org/en/Gecko_DOM_Reference>
<https://developer.mozilla.org/fr/R%C3%A9f%C3%A9rence_du_DOM_Gecko>
En pas français :
<http://www.oreillynet.com/topics/javascript/scripting>

etc ...

--
sm