Javascript funzt nicht im ie
Philip
- browser
Hallo, wenn ich folgendes Javaskript in meine Homepage inludiere, werden zwar die Metadaten vom ie ausgelesen und der quellcode ist in vollem umfang einsehbar aber ansonsten bleibt das browserfenster leer. Beim mozilla Firefox funktioniert das ganze aber!
<!-- Time -->
<script languagejavascript">
<!--
function tick()
{
var hours, minutes, seconds;
var intHours, intMinutes, intSeconds;
var today;
today = new Date();
intHours = today.getHours();
intMinutes = today.getMinutes();
intSeconds = today.getSeconds();
hours = intHours+":";
if (intMinutes < 10) {minutes = "0"+intMinutes+":";}
else {minutes = intMinutes+":";}
if (intSeconds < 10) {seconds = "0"+intSeconds+" ";}
else {seconds = intSeconds+" ";}
timeString = hours+minutes+seconds+"Uhr";
clock.innerHTML = timeString;
window.setTimeout("tick();", 1000);
}
</script>
Hat jemand nen tipp???
Hallo, wenn ich folgendes Javaskript in meine Homepage inludiere, werden zwar die Metadaten vom ie ausgelesen und der quellcode ist in vollem umfang einsehbar aber ansonsten bleibt das browserfenster leer. Beim mozilla Firefox funktioniert das ganze aber!
Das was du da gepostet hast sollte eher im IE funktioneren als im Firefox (was aber nciht heißt das das gut ist)
<!-- Time -->
<script languagejavascript">
was ist dass denn?
http://de.selfhtml.org/javascript/intro.htm#javascriptbereiche
clock.innerHTML = timeString;
clock ist nirgends definiert und sollte keine Eigenschaft innerHTML haben
Struppi.
ja sorry, <script languagejavascript">
war ein tippfehler und heißt in wirklichkeit so:
<script language="javascript">
allerdings wenn ich das clock oder das innerHTML weglasse, wird dies nichtmal im Firefox angezeigt! Hab mir das in folgendem script abgeschaut, welches parallel auf meiner seite läuft:
<!-- Countdown-->
<script language="JavaScript">
// Ziel-Datum in MEZ
var jahr=2005, monat=12, tag=31, stunde=23, minute=59, sekunde=59;
var zielDatum=new Date(jahr,monat-1,tag,stunde,minute,sekunde);
function countdown() {
startDatum=new Date(); // Aktuelles Datum
// Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
if(startDatum<=zielDatum) {
var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;
/* Allgemeines Vorgehen:
* Zunächst werden die vollen Jahre gezählt
* und anschließend der Start- und Ziel-Monat auf den jeweiligen 1. gesetzt.
* Nun werden erst die vollen Monate vom 1. zum 1. des Start- bzw. Ziel-Monats
* berechnet und danach die tatsächlichen Monatstage wieder mit einbezogen.
* Dieses Vorgehen vermeidet Probleme mit den verschiedenen Monatslängen.
* Was übrig bleibt, wird in Tagen, Stunden, Minuten und Sekunden ausgedrückt.*/
// Jahre
if(startDatum<zielDatum) {
while(startDatum<zielDatum) {
if(startDatum.setFullYear(startDatum.getFullYear()+1)<=zielDatum) jahre++;
}
startDatum.setFullYear(startDatum.getFullYear()-1);
}
// Restliche Tage zum Monatsende ermitteln
var restTage=0;
var m=startDatum.getMonth();
if(m==1-1|| m==3-1||m==5-1||m==7-1||m==8-1||m==10-1||m==12-1)
restTage=31-startDatum.getDate();
else if(m==4-1|| m==6-1||m==9-1||m==11-1) restTage=30-startDatum.getDate();
else if(m==2-1) {
if(startDatum.getFullYear()%4==0 && (startDatum.getFullYear()%100!=0
|| startDatum.getFullYear()%400==0))
restTage=29-startDatum.getDate(); // Schaltjahr
else restTage=28-startDatum.getDate();
}
// Start- und Ziel-Tag merken und auf 1 setzen
var startTag=startDatum.getDate();
var zielTag=zielDatum.getDate();
startDatum.setDate(1);
zielDatum.setDate(1);
// Monate
if(startDatum<zielDatum) {
while(startDatum<zielDatum) {
if(startDatum.setMonth(startDatum.getMonth()+1)<=zielDatum) monate++;
}
startDatum.setMonth(startDatum.getMonth()-1);
}
// Tatsächlichen Start- und Ziel-Tag berücksichtigen
if(startDatum.getMonth()==zielDatum.getMonth()) {
if(startTag<=zielTag) startDatum.setDate(startTag);
else {
monate--;
tage=restTage+1;
}
}
else {
startDatum.setMonth(startDatum.getMonth()+1);
if(startTag>=zielTag) tage=restTage+1;
else {
monate++;
startDatum.setDate(startTag);
}
}
zielDatum.setDate(zielTag);
// Tage
restTage=Math.floor((zielDatum-startDatum)/(24*60*60*1000));
startDatum.setTime(startDatum.getTime()+restTage*24*60*60*1000);
tage+=restTage;
// Stunden
stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);
// Minuten
minuten=Math.floor((zielDatum-startDatum)/(60*1000));
startDatum.setTime(startDatum.getTime()+minuten*60*1000);
// Sekunden
sekunden=Math.floor((zielDatum-startDatum)/1000);
// Anzeige formatieren
(jahre!=1)?jahre=jahre+" Jahre, ":jahre=jahre+" Jahr, ";
(monate!=1)?monate=monate+" Monate, ":monate=monate+" Monat, ";
(tage!=1)?tage=tage+" Tage, ":tage=tage+" Tag, ";
(stunden!=1)?stunden=stunden+" Stunden, ":stunden=stunden+" Stunde, ";
(minuten!=1)?minuten=minuten+" Minuten und ":minuten=minuten+" Minute und ";
if(sekunden<10) sekunden="0"+sekunden;
(sekunden!=1)?sekunden=sekunden+" Sekunden":sekunden=sekunden+" Sekunde";
countdowntext.innerHTML=
monate+tage+stunden+minuten+sekunden;
setTimeout('countdown()',1000);
}
// Anderenfalls alles auf Null setzen
else document.countdownform.countdowninput.value=
"0 Jahre, 0 Monate, 0 Tage, 0 Stunden, 0 Minuten und 00 Sekunden";
}
</script>
das problem script läuft aber auch nicht wenn ich die position ändere oder dieses countdown skript weglasse!
Hallo zusammen,
ich habe ja schon viel im Internet erlebt, aber das jemand Fremdes mit meiner Identität in öffentlichen Foren Beiträge postet ist ja wohl das letzte.
Besonders wenn es noch nicht einmal nötig ist eine Mail Adresse anzugeben!
Darum bitte ich darum dieses Thema zu löschen, bzw. meine E-Mail Adresse Info@Philip-Schneider.de aus dem Header zu entfernen.
Bei Rückfragen, die E-Mail Adresse ist ja bekannt.
MfG
Philip Schneider
P.S. Wenn es sich lediglich um einen Tippfehler handeln, sollte der betreffende doch in Zukunft besser aufpassen was er schreibt!!!
Hi there,
<script languagejavascript">
wenn ich ein Browser wär, würd' ich das auch nicht verstehen...
Hat jemand nen tipp???
siehe oben. Eigentlich sollte es ja heissen:
<script LANGUAGE="JavaScript">
wenn Du eine Fleissaufgabe erfüllen willst, damit das auch Browser im Jahre 2025 noch verstehen und vor allem, damit Du die Pedanten in diesem Forum zufriedenstellst könntest Du noch TYPE="text/javascript" hinzufügen...
Hallo,
ich nehme mal an, irgendwo in Deiner Seite gibt es einen HTML-Tag wie
<div id="clock"></div>
Wenn Du direkt nach Funktionsbeginn noch
var clock = document.getElementById("clock");
einfügst sollte es auch im IE funktionieren.
Siehe auch
http://mitglied.lycos.de/ratguard/tests/clock.html
Grüße,
Martin.