diff options
Diffstat (limited to 'files/fr/web/api/windoweventhandlers/onhashchange/index.html')
| -rw-r--r-- | files/fr/web/api/windoweventhandlers/onhashchange/index.html | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/files/fr/web/api/windoweventhandlers/onhashchange/index.html b/files/fr/web/api/windoweventhandlers/onhashchange/index.html new file mode 100644 index 0000000000..bbb31c4752 --- /dev/null +++ b/files/fr/web/api/windoweventhandlers/onhashchange/index.html @@ -0,0 +1,181 @@ +--- +title: WindowEventHandlers.onhashchange +slug: Web/API/WindowEventHandlers/onhashchange +translation_of: Web/API/WindowEventHandlers/onhashchange +--- +<div> +<div>{{APIRef("HTML DOM")}}</div> + +<div>L'événement <strong>hashchange</strong> est déclenché lorsque le hash de l'url change (cf. {{domxref("Window.location", "location.hash")}}).</div> + +<div> </div> +</div> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox">window.onhashchange = funcRef; +</pre> + +<p><strong>ou</strong></p> + +<pre class="syntaxbox"><body onhashchange="funcRef();"> +</pre> + +<p><strong>ou</strong></p> + +<pre class="syntaxbox">window.addEventListener("hashchange", funcRef, false); +</pre> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt><code>funcRef</code></dt> + <dd>Une référence à une fonction.</dd> +</dl> + +<h2 id="Exemples">Exemples</h2> + +<pre class="brush:js">if ("onhashchange" in window) { + alert("Le navigateur prend en charge l'événement hashchange!"); +} + +function locationHashChanged() { + if (location.hash === "#somecoolfeature") { + somecoolfeature(); + } +} + +window.onhashchange = locationHashChanged; +</pre> + +<h2 id="L'événement_hashchange">L'événement hashchange</h2> + +<p>Lorsque l'observateur d'événement déclenche l'événement hashchange il passe en paramêtres les arguments suivante:</p> + +<table class="standard-table"> + <tbody> + <tr> + <td class="header">Paramêtre</td> + <td class="header">Type</td> + <td class="header">Description</td> + </tr> + <tr> + <td><code>newURL</code> {{gecko_minversion_inline("6.0")}}</td> + <td><code>DOMString</code></td> + <td>Le nouvel URL où le navigateur est.</td> + </tr> + <tr> + <td><code>oldURL</code> {{gecko_minversion_inline("6.0")}}</td> + <td><code>DOMString</code></td> + <td>L'ancien URL où le navigateur se trouvait.</td> + </tr> + </tbody> +</table> + +<h3 id="Une_solution_autour_de_event.newURL_et_event.oldURL">Une solution autour de event.newURL et event.oldURL</h3> + +<pre class="brush:js">//insérez ce bout de code au début de votre code pour observer les changements de hash dans l'URL +if(!window.HashChangeEvent)(function(){ + var lastURL=document.URL; + window.addEventListener("hashchange",function(event){ + Object.defineProperty(event,"oldURL",{enumerable:true,configurable:true,value:lastURL}); + Object.defineProperty(event,"newURL",{enumerable:true,configurable:true,value:document.URL}); + lastURL=document.URL; + }); +}()); +</pre> + +<h3 id="sect1"> </h3> + +<h2 id="Spécifications">Spécifications </h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Spécifications</th> + <th scope="col">Statut</th> + <th scope="col">Commentaires</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('HTML WHATWG', '#windoweventhandlers', 'GlobalEventHandlers')}}</td> + <td>{{Spec2('HTML WHATWG')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('HTML5.1', '#windoweventhandlers', 'GlobalEventHandlers')}}</td> + <td>{{Spec2('HTML5.1')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName("HTML5 W3C", "#windoweventhandlers", "GlobalEventHandlers")}}</td> + <td>{{Spec2('HTML5 W3C')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">Compatibilité des navigateurs</h2> + +<p>{{CompatibilityTable}}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Support de base</td> + <td>5.0</td> + <td>{{CompatGeckoDesktop("1.9.2")}}</td> + <td> + <p>8.0</p> + + <p><code style="font-size: 14px;">oldURL</code>/<code style="font-size: 14px;">newURL</code> attributes are not supported.</p> + </td> + <td>10.6</td> + <td>5.0</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Support de base</td> + <td>2.2</td> + <td>{{CompatGeckoMobile("1.9.2")}}</td> + <td>9.0</td> + <td>11.0</td> + <td>5.0</td> + </tr> + </tbody> +</table> + +<p> </p> + +<h2 id="Lire_également">Lire également</h2> +</div> + +<ul> + <li><a href="/fr/docs/Web/Guide/DOM/Manipuler_historique_du_navigateur">Manipuler l'historique du navigateur</a></li> + <li>Méthodes <a href="/fr/docs/Web/API/Window/history" title="DOM/window.history">history.pushState() et history.replaceState()</a></li> + <li>L'événement <a href="/fr/docs/Web/API/WindowEventHandlers/onpopstate" title="DOM/window.onpopstate">popstate</a></li> +</ul> |
