was ist hier falsch??
ello
- html
0 afra0 ello1 Axel Richter0 afra
-2 Hopsel0 Zeromancer0 Axel Richter0 ello
<html>
<head>
<title>Atelier für Werbung und Design Reiner Kamp</title>
<meta name="author" content="ello">
<link rel="stylesheet" type="text/css" href="daten/styles.css">
<style type="text/css">
<!--
body {
scrollbar-3dlight-color:#fff;
scrollbar-arrow-color:#fff;
scrollbar-darkshadow-color:#fff;
}
-->
</style>
<script language="JavaScript">
<!--
//window.moveTo(0,0);
//window.resizeTo(screen.availWidth,screen.availHeight);
function zentrieren() {
document.getElementById('mainframe').style.position='absolute';
document.getElementById('mainframe').style.top=(document.body.offsetHeight-313)/2;
document.getElementById('mainframe').style.left=(document.body.offsetWidth-606)/2;
if(document.getElementById('mainframe').src=="leer.html") {
document.getElementById('mainframe').src="intro.html";
}
}
window.onresize=zentrieren;
//-->
</script>
</head>
<body onLoad="zentrieren()">
<center>
<iframe src="leer.html" width=606 height=513 scrolling=no frameborder=0 id="mainframe">
</body>
</html>
alles wunderbar mit InternetExplorer, aber absolut garnix beim FireFox... warum??
Hallo ello!
Wird das jetzt heiteres Fehlerraten?
Bitte definiere wunderbar und gar nix.
Schönen Gruß
Afra
also ich hab jetzt mal die tips berücksichtigt:
<html>
<head>
<title>Atelier für Werbung und Design Reiner Kamp</title>
<link rel="stylesheet" type="text/css" href="daten/styles.css">
<style type="text/css">
<!--
body {
scrollbar-3dlight-color:#fff;
scrollbar-arrow-color:#fff;
scrollbar-darkshadow-color:#fff;
}
-->
</style>
<script language="JavaScript" type="text/JavaScript">
<!--
//window.moveTo(0,0);
//window.resizeTo(screen.availWidth,screen.availHeight);
function zentrieren() {
document.getElementById('mainframe').style.position='absolute';
document.getElementById('mainframe').style.top=(document.body.offsetHeight-313)/2;
document.getElementById('mainframe').style.left=(document.body.offsetWidth-606)/2;
if(document.getElementById('mainframe').src=="leer.html") {
document.getElementById('mainframe').src="intro.html";
}
}
window.onresize=zentrieren;
//-->
</script>
</head>
<body onLoad="zentrieren()">
<center>
<iframe src="intro.html" width="606" height="513" scrolling="no" frameborder="0" id="mainframe"><br>
</iframe>
</center>
</body>
</html>
trotzdem wird beim FireFox immernoch nur ne leere Seite angezeigt. Wobei das Anzeigen des Quelltextes funktioniert. Aber auch wenn ich im iframe als src="intro.html" setze ändert das nix.
Wie gesagt. im IE wird das intro angezeigt.
Ich hab erst "leer.html" drinne damit das beim zentrieren nicht so komisch aussieht.
Hallo,
also ich hab jetzt mal die tips berücksichtigt:
function zentrieren() {
//Kontrollausgabe: Was steht in document.getElementById('mainframe').src?
alert(document.getElementById('mainframe').src);
document.getElementById('mainframe').style.position='absolute';
document.getElementById('mainframe').style.top=(document.body.offsetHeight-313)/2;
document.getElementById('mainframe').style.left=(document.body.offsetWidth-606)/2;
if(document.getElementById('mainframe').src=="leer.html") {
^Im FireFox ist IFRAME.src _nicht_ gleich Ressource-Name, siehe oben.
Tipp1:
Beschäftige Dich mit http://de.selfhtml.org/javascript/objekte/string.htm#index_of und http://de.selfhtml.org/javascript/objekte/string.htm#substring.
Tipp2: (mein Favorit)
Verabschiede Dich von der Idee dieses _nur_ mit JavaScript funktionierenden Intros. Verabschiede Dich aber _in jedem Fall_ von der Idee des window.moveto und window.resizeto.
viele Grüße
Axel
Hallo ello!
Weshalb setzt du mittels CSS nicht direkt iFrame zentriert in die Seite und machst dagegen diese hässliche onload Geschichte? Hierzu findest Du im Archiv sehr viele Infos: http://suche.de.selfhtml.org/ Suchabfrage _zentrieren_. Weshalb hast Du keinen Alternativtext für Browser welche keine iFrames darstellen können?
Schönen Gruß
Afra
alles wunderbar mit InternetExplorer, aber absolut garnix beim FireFox... warum??
Weil vieles falsch ist...
MfG Hopsel
你好 Hopsel,
alles wunderbar mit InternetExplorer, aber absolut garnix beim FireFox... warum??
Weil vieles falsch ist...
Super Antwort, toll gemacht. *tses*
再见,
克里斯蒂安
Hallo ello,
erste Hilfe:
Doctype fehlt
<html>
<head>
<title>Atelier für Werbung und Design Reiner Kamp</title>
<meta name="author" content="ello">
M.E. sinnlos
<link rel="stylesheet" type="text/css" href="daten/styles.css">
<style type="text/css">
<!--
body {
scrollbar-3dlight-color:#fff;
scrollbar-arrow-color:#fff;
scrollbar-darkshadow-color:#fff;
Wird nur im IE angezeigt
}
-->
</style>
<script language="JavaScript">
type-Attribut fehlt
<!--
//window.moveTo(0,0);
//window.resizeTo(screen.availWidth,screen.availHeight);function zentrieren() {
document.getElementById('mainframe').style.position='absolute';
document.getElementById('mainframe').style.top=(document.body.offsetHeight-313)/2;
document.getElementById('mainframe').style.left=(document.body.offsetWidth-606)/2;
if(document.getElementById('mainframe').src=="leer.html") {
document.getElementById('mainframe').src="intro.html";
}
}
window.onresize=zentrieren;
//-->
</script>
Sonst habe ich keine Ahnung von JS. Sorry.
</head>
<body onLoad="zentrieren()">
<center>
nicht mehr zeitgemäß
<iframe src="leer.html" width=606 height=513 scrolling=no frameborder=0 id="mainframe">
Attributwerte in Hochkommata("") einschließen.
</center> -> wieder schließen.
</body>
</html>[/code]
Mit freundlichen Grüßen
André
Hallo Ello,
unter anderem sind die von beschriebenen Fehler von André im Quelltext.
Was ich am JS-Script nicht verstehe ist z.B. die Zeile
window.onresize=zentrieren;
Was bezweckt die?
MfG Hopsel
Hallo Hopsel!
es wird onresize (Bei Änderung der Fenstergröße) die Funktion zentrieren ausgeführt. Ob das jetzt sinnvoll oder nicht ist bleibt dann mal dahingestellt ;o)
Schönen Gruß
Afra
fehlen da nicht die Klammern () ?
MfG Hopsel
Hallo!
fehlen da nicht die Klammern () ?
Nein.
Schönen Gruß
Afra
Hi,
Nein.
wieso nicht? ^^
MfG Hopsel
Hallo Hopsel!
Selbst SelfHTML lässt sich darüber nicht aus.
http://de.selfhtml.org/javascript/beispiele/fensterueberwachen.htm
Erklärungen gibt es aber sicherlich. Mit geht es auf jeden Fall nicht.
Schönen Gruß
Afra
Erklärungen gibt es aber sicherlich. Mit geht es auf jeden Fall nicht.
Ja, ein versuch hatte ich mal gestartet (ist aber nicht umsonst unter der Rubrik Experiemente)
http://javascript.jstruebig.de/exp/events.html
Struppi.
Hallo,
fehlen da nicht die Klammern () ?
Nein. Die Funktion zentrieren() soll hier ja nicht aufgerufen werden, sondern der _Bezeichner_ der Funktion zentrieren() wird dem Eventhandler window.onresize zugewiesen. Tritt dieses Ereignis (resize) ein, dann wird normalerweise eine anonyme (namenlose) Funktion aufgerufen, die den %script-Code ausführt, den der Eventhandler übergibt. Diese Funktion ist nach der Wertzuweisung nicht mehr anonym, sondern entspricht der Funktion zentrieren().
Die vollständige Schreibweise, mit anonymer Funktion, wäre
window.onresize = function() { zentrieren(); };
viele Grüße
Axel
Dankeschön.
War ja mal interessant. Zum Glück brauche ich JS nicht so oft ^^
MfG Hopsel
Hallo,
<iframe src="leer.html" width=606 height=513 scrolling=no frameborder=0 id="mainframe">
</body>
</html>
Der End-Tag des IFRAME-Elements ist _nicht_ optional. http://www.w3.org/TR/html4/intro/sgmltut.html#h-3.3.3 http://www.w3.org/TR/html4/present/frames.html#h-16.5
<!ELEMENT IFRAME - - (%flow;)* -- inline subwindow -->
viele Grüße
Axel
Also ich hab jetzt ein wenig rumgetestet und es muß am Javascript liegen. Habe ich da irgendwelche Objekte verwendet, die FireFox nicht interpretiert??
Tag ello.
Also ich hab jetzt ein wenig rumgetestet und es muß am Javascript liegen. Habe ich da irgendwelche Objekte verwendet, die FireFox nicht interpretiert??
Ja, Firefox hält sich bei der Verwendung des style-Objektes (Javascript) an die Regeln, die für die jeweils angesprochene Eigenschaft (CSS) gelten. Hiernach muss für eine Positionierungsangabe eine Einheit angegeben werden:
document.getElementById('mainframe').style.top=(document.body.offsetHeight-313)/2 + 'px';
document.getElementById('mainframe').style.left=(document.body.offsetWidth-606)/2 + 'px';
Siechfred
Hallo,
Ja, Firefox hält sich bei der Verwendung des style-Objektes (Javascript) an die Regeln, die für die jeweils angesprochene Eigenschaft (CSS) gelten. Hiernach muss für eine Positionierungsangabe eine Einheit angegeben werden:
Das habe ich auch geglaubt, bis ich in https://forum.selfhtml.org/?t=103136&m=634782 erkennen musste, dass dies auch dem Firefox im Quirks-Mode egal ist.
viele Grüße
Axel