Avatar billede manon Nybegynder
21. august 2000 - 21:10 Der er 38 kommentarer og
4 løsninger

Script til at chekke om javascriptfunktionen er slået fra!

(det lyder underligt at spørge i denne kategori, men eksperten har sikkert en løsning *s*)

Jeg har brug for et script der chekker om surferens javascript funktioner er slået fra og gør ham opmærksom på dette ved evt. at redricte ham til en 2. page.

Eller har i nogle bedre ideer om hvordan man kommer ud af det problem med at folk har den slået fra ? For de vil jo ikke kunne se ens sider!

\\manon

Avatar billede erikjacobsen Ekspert
21. august 2000 - 21:16 #1
Nemt nok - men uprøvet:

<script language=\"JavaScript\">
<!--
  document.location=\"dererjavascript.htm\">
//-->
</script>

<body>
  Du har ikke JavaScript
</body>


Der er godt nok et tag der hedder <NOSCRIPT>..</NOSCRIPT>, men der
er en enkelt ældre browserversion, der ikke understøtter det.
Avatar billede mpj Nybegynder
21. august 2000 - 21:17 #2
<SCRIPT LANGUAGE=\"JAVASCRIPT\">
<!--
//Nu skjuler man scriptet for dem der ikke kan
//læse det

SCRIPTET

//Hvis de kan javascript læser de indholdet men
//ellers ikke

</SCRIPT>
Avatar billede mpj Nybegynder
21. august 2000 - 21:18 #3
Med kommentar-fidusen, vil alle browsere ignorere det de ikke forstår inde imellem...
Mener jeg...
Avatar billede manon Nybegynder
21. august 2000 - 21:34 #4
Nu må i hjælpe mig, for jeg aner intet om det!

I giver mig 2 eks., men hvilken er så den man skal bruge?

Jeg har jo JS tilsluttet, så jeg jo ikke chekke det !! Så jeg føler mig lidt hensat i det mørke og roder falmende rundt *LOL*

Erik og mpj > Gider i at kommentere hinandens scipter mht. fordele/ulemper?

Erik > \"...<script language=\"JavaScript\"><!--document.location=\"dererjavascript.htm\">//-->
</script> .....osv\" - skal det ind i <head> ????
Og \"<body>Du har ikke JavaScript</body>\" skal ind på en html side der hedder \"dererjavascript.htm\" - er det korrekt opfattet ?????
Avatar billede mpj Nybegynder
21. august 2000 - 21:40 #5
Hvis du laver de der kommentar tegn vil den ignorere det der står hvis den ikke forstår det...!
Tror jeg
MANON>>

Jeg tror ikke at teksten \"Du har ike noget javascript\" skal ind på dererjavascript.htm
*LOL*
Avatar billede manon Nybegynder
21. august 2000 - 21:45 #6
mpj> De der \" (gåseøjne-*S*) var bare til for at \"dele\" teksten op :-)

Men hvilken skal jeg bruge ????
Avatar billede mpj Nybegynder
21. august 2000 - 21:49 #7
Nu har jeg tjekekr min javascript manual.... og der står at hvis man skriver

<SCRIPT LANGUAGE=\"JAVASCRIPT\">
<!-- Skjuler for gamle browsere

SCRIPT

-->
</SCRPT>

Så tror gamle browsere at der er en HTMLkommetar... og vil derfor ignorere den!
Avatar billede erikjacobsen Ekspert
21. august 2000 - 21:49 #8
Mpj\'s løsning dur ikke. Den løser ikke dit problem, manon. Ok, så skidt. Lad mig lave et
afprøvet eksempel! 2 secs (øh - måske liiiidddt mere)
Avatar billede manon Nybegynder
21. august 2000 - 21:59 #9
Erik > venter så..:-)

For...det lyder jo lidt åndsvagt når man bruger et jacascript til at detecte om brugeren har slået javascript fra i browseren!
Avatar billede olebole Juniormester
21. august 2000 - 22:02 #10
<ole>
Kunne man ikke lade folk gå ind på \'ikke-JavaScript-siden\' og så skrive:

<script language=\"JavaScript\">
<!--
    document.location.href = \"JavaScript_siden.html\";
// -->
</script>

/Vh
</bole>
Avatar billede olebole Juniormester
21. august 2000 - 22:03 #11
:oD
Avatar billede olebole Juniormester
21. august 2000 - 22:06 #12
Er vi ikke helt nede i version2 før \'<!--  -->\' fortolkes som en HTML-kommentar? Det er vist yderst sjældent, man ser dem.
/Vh
Avatar billede bacardil Nybegynder
21. august 2000 - 22:12 #13
:o)
Avatar billede erikjacobsen Ekspert
21. august 2000 - 22:14 #14
Jeg forstår dig ikke, Ole. <!-- --> er fortsat og har altid være kommentarer i JavaScript...
På http://eksperten.i.hasselager.net/javascript/23665a.htm kan du prøve et lille script.
Den redirecter til 23665b.htm hvis JavaScript er slået til.  23665a.htm ser sådan ud (b-filen
kan i selv se) (og det er testet...!):

<script language=\"JavaScript\">
<!--
  document.location=\"23665b.htm\";
//-->
</script>
<noscript>
<html>
<head>
<title>No JavaScript</title>
</head>

<body bgcolor=\"#FFFFFF\">
<h1>Tillykke</h1>
<p>Det er nu lykkedes dig at slå JavaScript fra. Din browser er nu
sikret mod mange ubehageligheder på Internettet.</p>
</body>
</html>
</noscript>
Avatar billede erikjacobsen Ekspert
21. august 2000 - 22:16 #15
Undskyld, <!-- --> er kommentarer i HTML. Det tænkte jeg da jeg skrev - men mine fingre må
have været i drillehumør.
Avatar billede mpj Nybegynder
21. august 2000 - 22:17 #16
Nej, men min løsning virker på den måde at javascriptet slet ikke læses...
Og det skulle virke.... Hvis i går ind på næsten ligemeget hvilken javascript side og kigger på et eksempel, vil i se
<SCRIPT BLABLABLABAL>
<!-- Hiding

Det lange script

//End hiding
-->
</SCRIPT>


Det bevirker at gamle browserer (fx. Netscape 1.0 og IE op tilversion IE 3.06) tror at det er en HTML-kommentar og blot ignorere den!
Avatar billede manon Nybegynder
21. august 2000 - 22:20 #17
Hvad har vi så gang i??

Hvad er svaret ? :-)

Hvad og hvilket script skal jeg sætte ind på min index.html side for at detecte om browseren understøtter js ?
Avatar billede erikjacobsen Ekspert
21. august 2000 - 22:29 #18
Jamen, mpj, han beder IKKE om at få gemt JavaScriptet for gamle browsere. Han beder
om at få OMDIRIGERET til to forskellige sider, afhængig af om der er JavaScript slået til eller
ej. Giver du så op ;-)  Manon: mit virker... hehe
Avatar billede manon Nybegynder
21. august 2000 - 22:41 #19
MPJ > Nu aner jeg jo ikke hvad hvilket script gør, men erikjacobsen har ret i at jeg har brug for et script der vidrestiller alle browsere/surfere der IKKE understøtter JS.

Pointen er jo at få de folk der har DEaktiveret javascript, hen på en side der forklarer dem at de altså ikke kan se denne side her - fordi den bruger javascripts!
Avatar billede manon Nybegynder
21. august 2000 - 22:57 #20
erik> Er dette så dit svar ? :-)

<script language=\"JavaScript\">
<!--
  document.location=\"23665b.htm\";
//-->
</script>
<noscript>
<html>
<head>
<title>No JavaScript</title>
</head>

<body bgcolor=\"#FFFFFF\">
<h1>Tillykke</h1>
<p>Det er nu lykkedes dig at slå JavaScript fra. Din browser er nu
sikret mod mange ubehageligheder på Internettet.</p>
</body>
</html>
</noscript>
Avatar billede erikjacobsen Ekspert
21. august 2000 - 23:01 #21
Ja, det er mit svar. Du kan prøve den uden JavaScript på http://www.delorie.com/web/lynxview.html, hvis
du ikke selv har installeret en browser uden, og hvis du ikke gider slå javascript fra i din browser.
Avatar billede manon Nybegynder
22. august 2000 - 02:02 #22
Enten har min NS og IE browsere ikke javascript inst. eller så gør jeg noget galt!

Når jeg bruger erikjacobsen´s script, for jeg at vide at jeg nu har slået javascript fra osv,osv....

Det er ikke det jeg har brug for! Jeg vil kunne se siden som normalt, men dem (browsere) der IKKE og jeg gentager IKKE kan se/læse javascript skal redirectes til en ganske almindelig html side!

Dette er her er en ganske almindelig index.html side:

===========================================

<html>
<head>
<title>test</title>
 
<script Language=\"JavaScript\">

browsername=navigator.appName;
if (browsername.indexOf(\"Netscape\")!=-1) {browsername=\"NS\"}

else
{
if (browsername.indexOf(\"Microsoft\")!=-1) {browsername=\"MSIE\"}

else {browsername=\"N/A\"}};

// Detect the browserversion
browser=\"0\";
if (navigator.appVersion.indexOf(\"2.0\")!=-1) {browser=\"2\"};
if (navigator.appVersion.indexOf(\"3.0\")!=-1) {browser=\"3\"};
if (navigator.appVersion.indexOf(\"4.0\")!=-1) {browser=\"4\"};

// Send visitor to relevant pages
if (browsername==\"NS\") {window.location=\"fjernnetscape.html\"};
if (browsername==\"MSIE\") {window.location=\"fjernstart.html\"};
if (browsername==\"N/A\") {window.location=\"fjernsorry.html\"};

</script>


</head>


<body bgcolor=\"#FFFFFF\">
<div align=\"center\">
  <p>indexside</p>
  <p>&nbsp;</p>
  <p>this page is under constructions - please come back later!</p>
</div>
</body>
</html>
==========================================

Hvor og hvordan ville i sætte et javascript ind i siden? Hvis browseren ikke understøtter javascript, hvordan kan man så korigere dette med yderligere et javascript eller har jeg total misforstået det ?

Skal det se sådan her ud ??????

=============================================
<html>
<head>
<title>test</title>
<script language=\"JavaScript\">
<!--
  document.location=\"sorrynojavascript.html\";
//-->
</script>
<script Language=\"JavaScript\">
browsername=navigator.appName;
if (browsername.indexOf(\"Netscape\")!=-1) {browsername=\"NS\"}
else
{
if (browsername.indexOf(\"Microsoft\")!=-1) {browsername=\"MSIE\"}
else {browsername=\"N/A\"}};
// Detect the browserversion
browser=\"0\";
if (navigator.appVersion.indexOf(\"2.0\")!=-1) {browser=\"2\"};
if (navigator.appVersion.indexOf(\"3.0\")!=-1) {browser=\"3\"};
if (navigator.appVersion.indexOf(\"4.0\")!=-1) {browser=\"4\"};

// Send visitor to relevant pages
if (browsername==\"NS\") {window.location=\"fjernnetscape.html\"};
if (browsername==\"MSIE\") {window.location=\"fjernstart.html\"};
if (browsername==\"N/A\") {window.location=\"fjernsorry.html\"};
</script>
</head>
<body bgcolor=\"#FFFFFF\">
<noscript>
<h1>Tillykke</h1>
<p>Det er nu lykkedes dig at slå JavaScript fra. Din browser er nu
sikret mod mange ubehageligheder på Internettet.</p>
</noscript>
<div align=\"center\">
  <p>indexside</p>
  <p>&nbsp;</p>
  <p>this page is under constructions - please come back later!</p>
</div>
</body>
</html>
========================================
Avatar billede manon Nybegynder
22. august 2000 - 02:12 #23
Nu sidder jeg og undrer mig lidt - skal...

<script language=\"JavaScript\">
<!--
  document.location=\"næsteside.html\";
//-->
</script>

...scriptet bruges til at redirecte ALLE der kan se javascript og dem der ikke kan, vil se .........

<noscript>
<h1>Tillykke</h1>
<p>Det er nu lykkedes dig at slå JavaScript fra. Din browser er nu
sikret mod mange ubehageligheder på Internettet.</p>
</noscript>

....og så ikke kunne komme videre ??

Er det rigtigt opfattet!!!!!!

Hvis det er sådan, så skal jeg jo næsten have flere sider inden surferen kommer ind til selve siden *GGG*

Den 1. til at finde ud af om de kan læse javascript - den 2. til at redirecte efter browsertype - for så at ende på en html side der passer til browseren/surferen?

Egentlig er det jo ikke noget problem - jeg skal bare lige lære filosofien i det hel *LOL*

Nogen det kan svare om jeg har opfattet det korrekt ? :-)
Avatar billede erikjacobsen Ekspert
22. august 2000 - 08:16 #24
Jo, det er det muliges kunst. Det vender nemlig omvendt af hvad du tror/troede. Men dit
browsercheck kan jo bygges ind i dit javascriptcheck, så der er én startside. Med JavaScript
dirigeres man til en passende browser-bestemt side (det gør du bare øverst i mit lille script), mens
den simple ikke-javascript-side bliver på startsiden.
Avatar billede jumper Nybegynder
22. august 2000 - 08:32 #25
<HTML>
<BODY>

<SCRIPT LANGUAGE=\"Javascript\">
<!--
location.href = \'MEDJAVASCRIPT.HTML\';
//-->
</SCRIPT>
<NOSCRIPT>
<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1; URL=UDENJAVASCRIPT.HTML\">
</NOSCRIPT>

</BODY>
</HTML>

Brugere MED javascript bliver smidt videre til MEDJAVASCRIPT.HTML og ignorerer HTTP-EQUIV-REFRESH, brugere UDEN Javascript bliver smidt videre til UDENJAVASCRIPT.HTML da de udfører HTTP-EQUIV-REFRESH.

/Thor
Avatar billede manon Nybegynder
22. august 2000 - 12:55 #26
Erik > Du siger ...\"dirigeres man til en passende browser-bestemt side (det gør du bare øverst i mit lille script)\".....!

Jeg skal have det på sort og hvidt, da min tænkegang er baseret på det visuelle og kinestetisk (ja, i må gerne grine *GG*), men så jeg kan i det mindste sammenligne dit script med det gamle jeg havde og se hvor du har rettet og tilføjet og på den måde husker/lærer jeg :-)

Så hvis du gider at kopiere min html/js tekst og indsætte dit eget js så det passer sammen, giver jeg nogle bonus point :-)
Avatar billede manon Nybegynder
22. august 2000 - 12:56 #27
Jumper > Et fint script, men er det ikke det samme som Erikjacobsen har lavet - bare lidt anderledes? Hvad er bedre i dit script?
Avatar billede jumper Nybegynder
22. august 2000 - 13:01 #28
manon, mit overholder HTML standarden ;)

erik havde smidt <noscript> og </noscript> rundt omkring alt fra <html> til </html>. Selvom nyere browsere ikke vil gå kold over det, vil ældre browsere have svært ved at fortolke det.

Og det er i særdeleshed ældre browsere der netop ikke vil have Javascript understøttelse.

/Thor
Avatar billede manon Nybegynder
22. august 2000 - 13:09 #29
ALLE >> (erik,mpj,ole,jumper)

Hvis vi ser bort fra point og interne spm., hvilket af de forslag skal jeg så bruge???
Avatar billede erikjacobsen Ekspert
22. august 2000 - 13:10 #30
Ældre browsere, der ikke understøtter JavaScript, kender heller <noscript> - men ellers har du
da ret, jumper. Det er høfligt (hehe) at have alt det udenoms med, men det bør kun være omkring
indholdet i <body>. Undlader man <noscript>...</noscript> får man det sjove resultat, at man ser teksten
et kort øjeblik, inden man går videre....

Manon, prøv selv, og vis os det (har dårligt tid).
Avatar billede jumper Nybegynder
22. august 2000 - 13:13 #31
Der behøves jo netop ikke være noget tekst mellem <noscript> og </noscript>, udelukkende META tagget, hvorfor man heller ikke vil se noget tekst ;).

/Thor
Avatar billede manon Nybegynder
22. august 2000 - 13:18 #32
I svare ikke på mine spørgsmål ! *snøft*
Avatar billede jumper Nybegynder
22. august 2000 - 13:19 #33
manon, hvis du vil være høflig overfor browseren, så brug mit forslag ;)

/Thor
Avatar billede manon Nybegynder
22. august 2000 - 13:59 #34
Hvordan kan jeg så implementere (sikke et fint ord*S*) jumpers forslag med dette script, så jeg undgår at have 3 rediretsider??

</script>
<script Language=\"JavaScript\">
browsername=navigator.appName;
if (browsername.indexOf(\"Netscape\")!=-1) {browsername=\"NS\"}
else
{
if (browsername.indexOf(\"Microsoft\")!=-1) {browsername=\"MSIE\"}
else {browsername=\"N/A\"}};
// Detect the browserversion
browser=\"0\";
if (navigator.appVersion.indexOf(\"2.0\")!=-1) {browser=\"2\"};
if (navigator.appVersion.indexOf(\"3.0\")!=-1) {browser=\"3\"};
if (navigator.appVersion.indexOf(\"4.0\")!=-1) {browser=\"4\"};

// Send visitor to relevant pages
if (browsername==\"NS\") {window.location=\"fjernnetscape.html\"};
if (browsername==\"MSIE\") {window.location=\"fjernstart.html\"};
if (browsername==\"N/A\") {window.location=\"fjernsorry.html\"};
</script>
Avatar billede manon Nybegynder
22. august 2000 - 14:03 #35
Erik > Ikke for at være Uhøflig overfor dit forslag, men jeg vil gerne være høflig mod browseren :-)

PS: I alle skal nok blibe \"belønet\" for jeres ydelser/indslag ;-)
Avatar billede jumper Nybegynder
22. august 2000 - 14:06 #36
Du tilføjer blot NOSCRIPT delen:

<script Language=\"JavaScript\">
browsername=navigator.appName;
if (browsername.indexOf(\"Netscape\")!=-1) {browsername=\"NS\"}
else
{
if (browsername.indexOf(\"Microsoft\")!=-1) {browsername=\"MSIE\"}
else {browsername=\"N/A\"}};
// Detect the browserversion
browser=\"0\";
if (navigator.appVersion.indexOf(\"2.0\")!=-1) {browser=\"2\"};
if (navigator.appVersion.indexOf(\"3.0\")!=-1) {browser=\"3\"};
if (navigator.appVersion.indexOf(\"4.0\")!=-1) {browser=\"4\"};

// Send visitor to relevant pages
if (browsername==\"NS\") {window.location=\"fjernnetscape.html\"};
if (browsername==\"MSIE\") {window.location=\"fjernstart.html\"};
if (browsername==\"N/A\") {window.location=\"fjernsorry.html\"};
</script>
<NOSCRIPT>
<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1; URL=UDENJAVASCRIPT.HTML\">
</NOSCRIPT>

/Thor
Avatar billede manon Nybegynder
22. august 2000 - 14:10 #37
JUMPER > Er du 100 % sikker på at det virker, for jeg vil gerne afslutte dette spm.

:-)
Avatar billede erikjacobsen Ekspert
22. august 2000 - 14:13 #38
(Når du gør det, manon, så giv jumper meeeeessst)
Avatar billede jumper Nybegynder
22. august 2000 - 14:15 #39
manon, hvis browseren ikke fatter Javascript, vil den ignorere ALT dit Javascript kode, men stadig udføre META-tagget mellem <noscript> og </noscript>.

erik, hvorfor dog det? ;)

/Thor
Avatar billede jumper Nybegynder
22. august 2000 - 14:16 #40
manon, hvis du har en Netscape browser kan du endda selv hurtigt se at det virker. Edit - Preferences - Advanced, og slå Javascript fra.

/Thor
Avatar billede manon Nybegynder
22. august 2000 - 14:35 #41
Jumpers løsning virker fint, testede det i netscape som han sagde.

dog har i alle været utrolig tålmodig og jeg har lært noget.

Specielt ERIK har lært mig noget i forståelse af javascript og derfor dine point :-)

Håber i er tilfreds og der ikke er nogen sure miner :-)
Avatar billede bennybit Nybegynder
26. oktober 2000 - 14:23 #42
Hvorledes slås JavaScript-understøttelsen så fra i IE5?

Har forsøgt forskelligt, men kan ikke se nogen effekt...???
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester