Archivlink: javarea.de Forum > JavaScript > JavaScript Aktiviert ?
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > JavaScript Aktiviert ?
Pages: [1]
| geschrieben von sobi am 06.06.2005 - 15:15 |
Gibt es eine Möglichkeit, bei Aufruf einer HP Seite auf aktiviertes JS zu prüfen und falls NEIN, auf eine bestimmte Seite weiter zu leiten ??
MfG
Uli |
| geschrieben von weisnix am 06.06.2005 - 15:30 |
Hallo,
Da ja eventuell JavaScript deaktiviert ist, kannst du es mit JS ja nicht überprüfen.
Da fällt mir nur das ein
<noscript><a href="#">JavaScript deaktiviert?</a></noscript>
dann sieht man diesen Link.
Gruß |
| geschrieben von Micha am 06.06.2005 - 16:29 |
Ja, nutze einen Meta-Refresh zB 5 Sekunden. Dieser Greift wenn JS deaktiviert ist. Für die, die JS aktiviert haben, machst Du eine JS weiterleitunf mit location.href...
Micha |
| geschrieben von sobi am 06.06.2005 - 17:32 |
| Zitat | | | Original geschrieben von derletztekick am 06.06.2005 - 16:29
Ja, nutze einen Meta-Refresh zB 5 Sekunden. Dieser Greift wenn JS deaktiviert ist. Für die, die JS aktiviert haben, machst Du eine JS weiterleitunf mit location.href...
Micha
|
Gecheckt. der Tipp ist gut. 
MfG
Uli
|
| geschrieben von sobi am 07.06.2005 - 11:09 |
| PHP-Quelltext | 1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
|
<?
<html>
<head>
<title>checkt auf aktiviertes js und leitet weiter</title>
<!-- JavaScript Check Script by Uli Sobers [http://free.templates.sobers.de] -->
<!-- content=5 :: Wartezeit vor Weiterleitung in Sekunden -->
<meta http-equiv="Refresh" content="5; URL=js-nicht-aktiviert.html">
</head>
<body>
Prüfe auf aktiviertes JavaScript, bitte warten
<script language="Javascript">
<!--
function active(){
location.href = "js-aktiviert.html";
}
// 5000 = Wartezeit vor Weiterleitung in Millisekunden
setTimeout("active()", 4000);
//-->
</script>
</body>
</html>
?>
|
Die PHP Syntax muss man sich natürlich wegdenken. Mit meinem Account kann ich hier leider keinen HTML Code schön anzeigen.
Hier der Download:: MfG Uli |
| geschrieben von Cluster am 07.06.2005 - 14:19 |
Ich habe den Refresh einfach in das <noscript> eingebunden, und zwar so:
| PHP-Quelltext | 1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
|
<?
<html>
<head>
<script src="check.js"></script>
<NOSCRIPT>
<meta http-equiv="refresh" content="0;URL=keinjava.php">
</NOSCRIPT>
</head>
...
</html>
?>
|
Es wird dabei ein kleines Script durchgearbeitet, welches keine große Relevanz hat und wenn dies möglich ist (also bei eingeschalteten Javascript) läuft das Laden der Seite weiter und wenn nicht (also bei ausgeschalteten Javascript) dann wird mittels refresh eine andere Seite geladen. |
| geschrieben von Micha am 07.06.2005 - 16:11 |
Mit dem Unterschied, das Du Deine Seite nicht validieren kannst, da der NOSCRIPT Tag im Head-Bereich _nicht_erlaubt ist.
Somit ist der andere Weg der bessere.
Einfacher wäre jedoch:
Im HEAD das Script sofoert aufzurufen, also ohne zeitliche Verzögerung.
Micha |
| geschrieben von sobi am 07.06.2005 - 21:44 |
| Zitat | | | Original geschrieben von derletztekick am 07.06.2005 - 16:11
Einfacher wäre jedoch:
Im HEAD das Script sofoert aufzurufen, also ohne zeitliche Verzögerung.
|
@ derletztekick:: Ich hab die Verzögerung nur eingebaut, damit man den bei Aufruf erscheinenden Hinweis "Prüfe auf aktiviertes JavaScript, bitte warten" noch gut lesen kann. Der Hinweis kommt natürlich erst, wenn Du die Beispieldatei aus der .zip im Attachment startest. Wenn ich da keine Verzögerung einbaue, kommt von irgendeiner Seite mit Sicherheit ein Einwand, dass der Monitor beim Seitenaufruf flackert. So was und anderes hab ich schon oft zu hören bekommen. Also besser erst mal mit Wartezeit, damit kein User meckert.
Könntest Du mir bitte zu Clusters Vorschlag mal kurz sagen, wozu man eine Validierung denn unbedingt braucht ???
@ Cluster:: Den Vorschlag find ich gut, weil da nur auf eine "ERROR-Seite" verzweigt wird, wenn kein JS aktiv ist. Man spart sich also das Flackern vom Bildschirm. Ich werd's bei mir auf http://free.templates.sobers.de in den Script Bereich stellen. Kannst mir ja noch schreiben, wen ich im Header des Scripts als Autor eintragen soll. Den Hinweis auf mangelnde Validierung bring ich dann im Link-Tipp zu dem Script.
Danke an Euch beide für das Interesse
Tschö
Uli  |
| geschrieben von Micha am 07.06.2005 - 23:33 |
Die W3C schreibt den Standard in (x)HTML vor. Sie definiert, welche HTML-Tags wo stehen dürfen, welche Attribute sie haben können usw.
Über dem HEAD Bereich einer Seite sieht man idr so etwas in der Art:
| HTML-Quelltext | 1:
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
Bedeutet in dem Fall, ich habe versucht (mit Erfolg) die Seite nach den Regeln der W3C in korrektem (vaild) HTML4.01 zu erstellen.
Übertragen wir das auf das Bsp: Die W3C sieht kein NOSCRIPT-Tag zwischen <head> und </head> vor - er ist dort nicht erlaubt.
Das es die meisten Browser nciht stört, sei mal dahin gestellt: Du kannst aber nicht davon ausgehen, das alle so "grosszügig" sind.
Check Deine Seite http://validator.w3.org/
Schöne Grüße Micha |
| geschrieben von Cluster am 08.06.2005 - 07:43 |
| @sobi: brauchste nicht unbedingt einen Autor vermerken. Habe mir das auch nur sozusagen "abgeschaut" und "hingebastelt". |
|