Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   HTML: Frage zu Doctype (https://www.delphipraxis.net/43080-html-frage-zu-doctype.html)

Wuaegner 28. Mär 2005 20:17


HTML: Frage zu Doctype
 
Hallo,
habe nun ewig nach Gründen gesucht wieso Java Script in meiner Seite im IE ausgeführt wird im FF aber nicht.
Dann hat es endlich mit diesem Doctype:
Delphi-Quellcode:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
geklappt.
Schließe ich jedoch diesen Doctype mit einer spitzen Klammer also so:
Delphi-Quellcode:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
so führt FF wieder kein Java-Script aus.
Kann mir das jemand erklären wieso das so ist und vor allem was das soll???

[edit=sakura] Eckige Klammern ersetzt. Mfg, sakura[/edit]

moritz 28. Mär 2005 20:43

Re: [HTML] Frage zu Doctype
 
Wie schaut denn der restliche Code aus?

Pr0g 28. Mär 2005 20:44

Re: [HTML] Frage zu Doctype
 
Versuchs mal damit (der Doctype muss auf jeden Fall geschlossen werden):
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
MfG Pr0g

Wuaegner 28. Mär 2005 20:58

Re: [HTML] Frage zu Doctype
 
Zitat:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Funktioniert auch nicht. FF führt JavaScript nicht aus.
Warum muss er unbedingt geschlossen werden?
Aber wenn es so funktioniert lass ich es wohl so... auch wenn ich nicht versteh was das soll.

moritz 28. Mär 2005 21:07

Re: [HTML] Frage zu Doctype
 
Weil Tags immer geschlossen werden müssen, vorallem seit der XHTML-Spezifikation, die du ja verwendest. Du wirst einen Fehler in der Seite haben, Firefox ignoriert einen JS nicht umstonst.
Versuch mal folgende Doctype:
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

Wuaegner 28. Mär 2005 21:08

Re: [HTML] Frage zu Doctype
 
@moritz:

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 

<html>
<head>

<title>Test</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="../stylesheet.css">

<script type="text/javascript">
var i=30
var intHide
var speed=3
function showmenu()
{
clearInterval(intHide)
intShow=setInterval("show()",10)
}
function hidemenu()
{
clearInterval(intShow)
intHide=setInterval("hide()",10)
}
function show()
{
if (i<182)
   {
   i=i+speed
   document.getElementById('menu').style.left=i
   }
}
function hide()
{
if (i>15)
   {
   i=i-speed
   document.getElementById('menu').style.left=i
   }
}
</script>

</head>

<body>

<div id="banner">[img]../Bilder/banner.jpg[/img]</div>
<div id="navleiste">[url="../home.html"][img]../Bilder/navleistelinkhome.jpg[/img][/url]</div>

<div id="mainhome"></div>

<div id="randoben">[img]../Bilder/oben.jpg[/img]</div>
<div id="links">[img]../Bilder/linkslinks.jpg[/img]</div>
<div id="rechts">  
[img]../Bilder/linksrechts.jpg[/img]
</div>
<div id="menu" onmouseover="showmenu()" onmouseout="hidemenu()">[url="#"]TestLink[/url]


  [url="#"]TestLink2[/url]</div>
<div id="linkspalte">   [url="../home.html"][img]../Bilder/linkshome.jpg[/img][/url]
                         [img]../Bilder/linksklein.jpg[/img]
                   [url="../dienstleistungen.html"][img]../Bilder/linkdienst.jpg[/img][/url]
                    [img]../Bilder/linksgross.jpg[/img]
                    [url="../beratung.html"][img]../Bilder/linksberatung.jpg[/img][/url]
                         [img]../Bilder/linksgross.jpg[/img]
                   [url="../partner.html"][img]../Bilder/linkspartner.jpg[/img][/url]
                    [img]../Bilder/linksgross.jpg[/img]
                    [url="../beratung.html"][img]../Bilder/linksreferenzen.jpg[/img][/url]
                   [img]../Bilder/linksmitte.jpg[/img]
                   [url="../impressum.html"][img]../Bilder/impressum.jpg[/img][/url]
                   [img]../Bilder/linksklein.jpg[/img]
                   [url="../beratung.html"][img]../Bilder/kontakt.jpg[/img][/url]
                   [img]../Bilder/linksunten.jpg[/img]
</div>


<div id="content"><center><h1>TEMPLATE TEST</h1></center></div>

</body>
</html>
Edit: Sorry, dass die Formatierung so verunstaltet dargestellt wird.

Wuaegner 28. Mär 2005 21:13

Re: [HTML] Frage zu Doctype
 
Zitat:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Wenn ich diesen benutze funkt JavaScript im FF und im IE aber das Banner oben wird ein Pixel zu weit rechts dargestellt im IE. Im FF richtig. Deshalb hatte ich noch
Zitat:

"http://www.w3.org/TR/html4/loose.dtd">
angefügt, dann wurde es in beiden richtig dargestellt. Dafür ging das JS im FF nicht mehr!

Pr0g 28. Mär 2005 21:25

Re: [HTML] Frage zu Doctype
 
Du solltet dich erstmal entscheiden was du willst, also ob XHTML 1.0, oder HTML 4.01. Das manche Elemente je nach Angabe anders Positioniert werden ist normal, das musst du dann berichtigen. Guck dir die Seite dann im Firefox an und öffne de JavaScript-Konsole. Vielleicht findest du dort eine Meldung, die drauf hinweist, warum das JS nicht richtig funktioniert.

Wuaegner 28. Mär 2005 21:27

Re: [HTML] Frage zu Doctype
 
Die Konsole sagt Fehler in Zeile 1 ( drum bin ich drauf gekommen, dass es am Doctype liegt)

Pr0g 28. Mär 2005 21:35

Re: [HTML] Frage zu Doctype
 
Kannst du die Seite mal irgenwo hochladen, damit man es testen kann?

Wuaegner 28. Mär 2005 22:09

Re: [HTML] Frage zu Doctype
 
Ok hab es nun hochgeladen, erreichbar unter Website.
Dieser Doctype
Delphi-Quellcode:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
( mit geschlossener Klammer) FF führt JS nicht aus, IE schon. Ohne geschlossene Klammer führen es beide aus.

Mystic 28. Mär 2005 22:32

Re: [HTML] Frage zu Doctype
 
http://validator.w3.org/check?uri=ht...tomatically%29

Korrigier erstmal die ganzen Fehler.

alcaeus 29. Mär 2005 06:42

Re: [HTML] Frage zu Doctype
 
Hallo Mystic,

vielleicht liegt es daran, dass du das meta- und link-Tag nicht geschlossen hast. Laut XHTML-Spezifikation muessen alle Tags geschlossen werden, bei alleinstehenden Tags geschieht dies mit "/>" anstatt ">". Das koennte die Ursache sein, vielleicht ist der IE hier einfach toleranter als FF.

Greetz
alcaeus

Wuaegner 29. Mär 2005 11:06

Re: [HTML] Frage zu Doctype
 
@mystic: Danke für den Tip.
Habe die Seite jetzt unter Verwendunge dieses Doctypes:
Delphi-Quellcode:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
"valid" gemacht. Es werden keine Fehler oder Warnungen mehr angezeigt. Dasselbe gilt für das stylesheet.
Firefox führt jedoch kein JS aus. Woran liegt das?

Wuaegner 29. Mär 2005 11:36

Re: HTML: Frage zu Doctype
 
So jetzt weiß ich den Grund warum Firefox die Java Script Funktionen nicht ausgeführt hat.
Firefox erwartet bei .style Angaben immer eine Einheit!!!
So:
Delphi-Quellcode:
<script type="text/javascript">
<!--
var i=30
var intHide
var speed=3
function showmenu()
{
clearInterval(intHide)
intShow=setInterval("show()",10)
}
function hidemenu()
{
clearInterval(intShow)
intHide=setInterval("hide()",10)
}
function show()
{
if (i < 182)
   {
   i=i+speed
   document.getElementById('menu').style.left=i+"px" <===== WICHTIG!
   }
}
function hide()
{
if (i>15)
   {
   i=i-speed
   document.getElementById('menu').style.left=i+"px" <===== WICHTIG!
   }
}
-->
</script>
:dancer: Endlich .

Mystic 30. Mär 2005 11:44

Re: HTML: Frage zu Doctype
 
Da muss auch nach dem Standard IMMER eine Einheit hin (nur bei 0 braucht man keine).


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz