You are not logged in.

wcf.regNote.message

Prometheus

Administrator

  • "Prometheus" started this thread

Posts: 3,278

  • Send private message

1

Monday, November 7th 2005, 11:19pm

JS und Kompatibilität mit verschiedenen Browsern

so langsam hab ich echt das gefühl es war gut das ich mich bisher vor js fern gehalten hab. das is ja echt mal nen mist wenn man was zusammen bastelt was im ie und opera 100% klappt und dann im firefox grade garnix funktioniert. selbst die einfachsten dinge gehen nicht obwohl es keine erklärung dafür gibt. da allerdings jede menge leute den ff nutzen oder eben opera und ie finde ich muss ne webseite auf allen dreien zumindest laufen. ganz davon abgesehen das browser wie lynx und desgleichen sofort verloren haben bei solchen sachen.

bei mir ist es übrigens so das selbst die angaben von selfhtml in sachen browserkompatibilität nicht stimmen. hier mal ein beispiel was im ie und opera problemlos geht aber im ff kein stück. (texte sind verändert da das projekt noch im aufbau ist)

PHP Source code

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
// Globale Definitionen
$pagename             "XXXXXXXXXXXXXXXXXXXXXXXXXXXX";
$pagestatus         "(at)Work";
$action                "aktiv";

// Variablen füllen
if(isset($_REQUEST['datei'])) $datei $_REQUEST['datei']; else $datei "start";
if(isset($_REQUEST['lang'])) $lang $_REQUEST['lang']; else $lang "de";

// Seiteninhalt
if ($action == "aktiv") {
    // Seiteninhalte vorbereiten
    $data=fopen("templates/".$datei.".tpl","r");
    $readdata=fread($data,filesize("templates/".$datei.".tpl"));
    fclose($data);
    $readdata addslashes($readdata);
    eval ("\$showpage = \"$readdata\";");
    $showpage stripslashes($showpage);

    // Header
    echo "<html>";
    echo "<script type=\"text/javascript\"><!--\n";
    echo "var lang = new Object();\n";
    echo "function loadLang() {\n";
    echo "    var object = undefined;\n";
    echo "    var key = \"\";\n";
    echo "    for (key in lang) {\n";
    echo "        object = document.getElementById(key);\n";
    echo "        if(object) {\n";
    echo "            if(object.nodeName == \"OPTION\") {\n";
    echo "                object.text = lang[key];\n";
    echo "            } else if(object.nodeName == \"INPUT\") {\n";
    echo "                object.value = lang[key]\n";
    echo "            } else {\n";
    echo "                object.innerHTML = lang[key];\n";
    echo "            }\n";
    echo "        }\n";
    echo "        object = undefined;\n";
    echo "    }\n";
    echo "}\n";
    echo "--></script>";
    echo "<head><title>".$pagename."</title></head>\n";
    // Body
    echo "<body bgcolor=\"#ffffff\" text=\"#430B0C\" alink=\"#ff0000\" vlink=\"#aa0000\">\n";
    echo "<div id=\"farbbalken_oben\" style=\"background-image:url(pics/bg1.jpg); background-repeat:repeat; position:absolute; top:0px; left:0px; height:256px; z-index:1\"></div>\n";
    echo "<div id=\"haupthintergrund\" style=\"background-image:url(pics/starthg.jpg); background-repeat:repeat; position:absolute; top:256px; left:0px; z-index:2\"></div>\n";
    // Template ausgeben
    echo         $showpage;
    // Footer
    echo "<div id=\"copyright\" style=\"position:absolute; z-index:3\"><center><font face=\"arial, tahoma, helvetica\" size=\"-2\" color=\"#aaaaaa\">(c)</font></center></div>\n";
    echo "</body>\n";
    echo "<script src=\"lang/".$lang."_".$datei.".lng\" type=\"text/javascript\"></script>\n";
    echo "<script type=\"text/javascript\">\n";
    echo "<!--\n";
    echo "    var page_path = \"index.php?datei=$datei\";\n";
    echo "    var div = document.getElementById(\"haupthintergrund\");\n";
    echo "    var divx = document.getElementById(\"farbbalken_oben\");\n";
    echo "    var div_copyright = document.getElementById(\"copyright\");\n";
    echo "    var div_output = document.getElementById(\"output\");\n";
    echo "    if(div) {\n";
    echo "        div.style.height = document.body.offsetHeight - 262;\n";
    echo "        div.style.width = document.body.offsetWidth - 22;\n";
    echo "    }\n";
    echo "    if(divx) {\n";
    echo "        divx.style.width = document.body.offsetWidth - 22;\n";
    echo "    }\n";
    echo "    if(div_copyright) {\n";
    echo "        div_copyright.style.top = document.body.offsetHeight - 25;\n";
    echo "    }\n";
    echo "    if(div_output) {\n";
    echo "        div_output.style.width = document.body.offsetWidth - 170;\n";
    echo "    }\n";
    echo "    loadLang()\n";
    echo "-->\n";
    echo "</script>\n";
    echo "</html>\n";
}
?>

in den templates wird jeweils ein haupt div geladen welches den entsprechend aufgerufenen inhalt enthällt. navigation ist noch garnicht dabei. im ie und opera sehe ich super den hintergrund seitenfüllend und auch inhalte werden so dargestellt wie ich will. nur im ff sehe ich lediglich den text vom inhalt und sonst rein garnichts.

es fehlt übrigens auch noch irgendwas das beim ändern der fenstergröße der hintergrund dynamisch angepasst wird.
Jedwege Anfragen bitte an Technomausi oder ShaoKhan richten. Dieses Konto ist und bleibt inaktiv.

xundy

Beginner

Posts: 37

  • Send private message

2

Sunday, November 20th 2005, 9:39am

Also nur mal so am rande wegen der Kompatibilität, da solltest du Zeilenumbrüche immer so \r\n erzeugen, Windows wirds danken ;)

mfg

Prometheus

Administrator

  • "Prometheus" started this thread

Posts: 3,278

  • Send private message

3

Wednesday, November 23rd 2005, 4:49pm

Quoted

Original von xundy
Also nur mal so am rande wegen der Kompatibilität, da solltest du Zeilenumbrüche immer so \r\n erzeugen, Windows wirds danken ;)

mfg

ok aber die page läuft auf nem linux server und ich glaub nicht das es unbedingt daran liegt.

soweit ich das sehe konnte das problem gelöst werden siehe -> HIER
Jedwege Anfragen bitte an Technomausi oder ShaoKhan richten. Dieses Konto ist und bleibt inaktiv.

wcf.user.socialbookmarks.titel