08. november 2006 - 21:13Der er
30 kommentarer og 1 løsning
JavaScript slået fra - menuer virker ikke
Jeg kan se at når man sætter security i windows XP til HIGH, så må den også slå javascript fra.
Men hvor mange kører med javascript slået fra ?
For jeg kan se at her på eksperten.dk så virker top menuen ikke, og det gør den heller ikke på min egen siden når den er slået fra, og det er vel et problem, da nogle kunder ikke kan navigere rundt på min eshop, ?
kan man lave noget i PHP som hedder if(javaskript er slået til) { vis javascript menu } else { vis html menu }
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
<script type="text/javascript" language="JavaScript1.2"> hele min javascript menu er her i mellem som vises når javascript er slået TIL </script> <noscript>her skal menuen være som KUN vises når javascript er slået FRA </noscript>
Hvad ser google ? den kan vel ikke læse min javascript menu, men den læser vel det mellem noscript så ?
men det er blevet skrevet mellem noscript bliver jo også loadet i koden hvergang også selvom brugeren har javascript slået til ? og derved fylder siden jo også mere... var det så ikke mere smart med PHP som jeg spørger til i det andet spørgsmål ?
Så vidt jeg ved: PHP kan ikke checke om JavaScript er slået til.
Du kan dog lave noge JavaScript kode, der loader en bestem PHP fil, som så kan afgøre om JS er slået til eller ej..
F.eks. kunne man gøre sådan:
meta-refresh sættes til 10 sekunder, url = fil.php?js=nej javascript-window.location.href='fil.php?js=ja'
Du kan så se, om JS er slået til, hvis du på fil.php aflæser værdien af "js".. Hvis værdien er "ja", sæt en session eller cookie, der smider din HTML menu ind..
hvad ville du mene er bedst ? og hvad er den mest rigtige måde at gøre det på ?
jeg synes det med meta refresh lyder som en lidt fusket måde :)
på den anden side så synes jeg også NOSCRIPT ikke er helt ok, da den skal loade hele menuen i HTML selvom man har slået javascript til, som vel 95% har ?
Der er jo sådan set ikke noget fusket.. Du prøver på at finde ud af, hvad du har tilrådighed..
Jeg ville nok inkludere en PHP fil på alle siderne, der checker om der er en cookie/session med "no-js=true" eller ligende..
Hvis cookies ikke findes send til test side ellers indsæt HTML menu
test side (checkjs.php):
<html> <head> <META HTTP-EQUIV=Refresh CONTENT="5; URL=/checkjs.php?js=nej"> <script type="text/JavaScript" language="JavaScript"> window.location.href="/checkjs.php?js=js"; </script> </head> <body> Tester JavaScript... det kan tage op til 5 sekunder.. </body> </html>
<html> <head> <META HTTP-EQUIV=Refresh CONTENT="5; URL=/checkjs.php?js=nej"> <script type="text/JavaScript" language="JavaScript"> window.location.href="/checkjs.php?js=js"; </script> </head> <body> Tester JavaScript... det kan tage op til 5 sekunder.. </body> </html>
<html> <head> <META HTTP-EQUIV=Refresh CONTENT="5; URL=/checkjs.php?js=nej"> <script type="text/JavaScript" language="JavaScript"> window.location.href="/checkjs.php?js=js"; </script> </head> <body> Tester JavaScript... det kan tage op til 5 sekunder.. </body> </html>
<html> <head> <META HTTP-EQUIV=Refresh CONTENT="5; URL=/checkjs.php?js=nej"> <script type="text/JavaScript" language="JavaScript"> if (!window.location.search) window.location.href="/checkjs.php?js=ja"; </script> </head> <body> Tester JavaScript... det kan tage op til 5 sekunder.. </body> </html>
Nu checker JavaScript, om der står noget i querystring, inden den loader /checkjs.php?js=ja..
at man kan komme til at vente i op til 5 sek, men det er selvfølgelig kun dem som har slået det fra....ellers kunne den vel også bare ændres til 1.... og der skal jo også noget kode til før det virker :) så var det måske bare lige så nemt at lave det i NOSCRIPT
Det er kun 5 links jeg skal have i min HTML menu så det er jo heller ikke så meget kode...
Jeg synes bare ikke den meta kode er så nem at få en på en side der eksitere med ca. 500 produkter (så 500 links ind fra google), der kan jeg jo ikke lige smide en tjek side ind først!
Langt de fleste sites bruger javascript, grunden til at man slår javascript fra er jo for at undgå ondsindet kode at udføre. så når en bruger går ind på en side, må han vurdere om han har "tillid" til siden, og derefter tillade javascript.
en nem måde er:
i header
<javascript> function skjul() document.getElementById('info').style.visible = false; </javascript>
<body onload="skjul()"><div id="info">Denne side kræver javascript for at køre!!!</div>
er javascript slået til skjules info, er javascript slået fra vises info.
tak thesurfer, taget udfra hukommelsen, hvilket åbenbert ikke er for godt her i morgenstunden du er min ven ;-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.