Forcer l’activation du javascript
J'ai besoin pour un nouveau site d'être certain que le javascript est activé.
Si si ; ça peut être indispensable.
Par exemple, pour un site de réservation qui offrirait un mode "borne publique", il faut régulièrement controler avec un bout de code Ajax si l'état du planning doit être réaffiché.
Le principe me paraissait simple :
1] Encadrer la page par un div qui masque son contenu
2] Rendre visible ce div avec du javascript : si le javascript n'est pas actif ; le contenu de la page ne s'affiche pas.
3] Principe inverse pour afficher un message invitant l'utilisateur à afficher le javascript.
Or me voici à la recherche du bout de code en question avec notre ami Google.
Etrangement, impossible de trouver ce procédé !
On trouve partout un bout de code qui ne me convient pas du tout et qui consiste en :
<script type="text/javascript">
document.write("<p>Youpi ; javascript est activé</p>");
</script>
<noscript>
Javascript est désactivé...
</noscript>
bla bla quand même alors que je ne veux pas !!
Mais ça ne convient pas du tout !
En effet, la balise <noscript> affiche bien son contenu quand le javascript n'est pas activé ; mais elle n'empeche nullement l'affichage des autres balises de la page.
Voici donc la bonne solution :
<body>
<div id='avertissement' name='avertissement'>
<p>Javascript est désactivé... Le site ne peux pas fonctionner
</div>
<div id="monsite" style="display:none" name='monsite'>
Voici du bla bla ...<br>
Mais seulement si javascript est activé !!
</div>
<body>
<script type="text/javascript">
document.getElementById('monsite').style.display='block';
document.getElementById('avertissement').style.display='none';
</script>
Aucun trackbacks pour l'instant