- <html>
- <body>
- <script type="text/javascript">
- document.write("Your Javascript is enabled!");
- </script>
- <noscript>
- Your Javascript is not enabled!
- </noscript>
- </body>
- </html>
Scopul este de a afla dacă JavaScript a fost dezactivat în timp ce pagina era activă.
Pentru început, am folosit un script de pe http://www.permadi.com/tutorial/flashjscommand/
- <script type="text/javascript">
- function getFlashMovieObject(movieName)
- {
- if (window.document[movieName])
- {
- return window.document[movieName];
- }
- if (navigator.appName.indexOf("Microsoft Internet")==-1)
- {
- if (document.embeds && document.embeds[movieName])
- return document.embeds[movieName];
- }
- else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
- {
- return document.getElementById(movieName);
- }
- }
- </script>
Apoi, am inserat flash-ul în pagină, astfel:
- <embed src="nojs.swf" id="myFlashMovie" name="myFlashMovie"></embed>
Fişierul flash conţine următoarele script-uri:
Frame 1 şi 4: primul script
- msg="notOK";
- getURL('javascript:getFlashMovieObject("myFlashMovie").SetVariable("/:msg", "OK");void(0)');
Frame 3 şi 6: al doilea script
- if(msg=="OK")
- gotoAndPlay(1);
- else gotoAndPlay(4)
Drept rezultat, frame-urile 1-3 se vor repeta cât timp JavaScript este activat, iar 4-6 cât timp JavaScript este dezactivat (afişând un mesaj către user).
Observaţii:
- Este important ca între primul şi al doilea script flash să existe cel puţin un frame liber
- Dacă doriţi să redirecţionaţi userul pe o altă pagină, când JavaScript a fost dezactivat, înlocuiţi script-ul din frame-ul 4.
- Setarea "frames per second" a fişierului SWF, influenţează numărul de teste pe secundă/minut.
- A se folosi doar pe Web (http(s)). Executat local, script-ul poate genera un avertisment din partea browserului.
[Download demo]
Welcome to BitCell. Click here to register !
