1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

html elemente je nach browsertyp anzeigen

  • MarvinTheRobot
  • 25. Mai 2005 um 13:58
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • MarvinTheRobot
    Punkte
    7.308
    Beiträge
    1.368
    • 25. Mai 2005 um 13:58
    • #1

    hi!

    ich hab folgendes problem: ich möchte dass in allen browsern die z.b. "document.all" unterstützen an einer bestimmten stelle ein iframe angezeigt wird, sollte document.all nicht unterstützt werden soll genau an dieser stelle ein textfeld angezeigt werden, oder irgendwas anderes.

    ich habs im moment so gelöst dass ich beide elemente in jeweils einem <div> mit einer id geschachtelt hab und dann einfach wenn document.all erfüllt ist div nummer eins auf display:block und div nummer 2 auf display:none (natürlich genauso in der umgekehrten variante) gesetzt..... was aber net wirklich schön ist.

    ich könnt genauso mit php eine funktion schreiben die je nachdem welcher browser zugreift ein anderes file includet.... aber das sollt doch auch locker mit JS gehn oder?

    lg, Phil.

  • epi.um
    Punkte
    2.055
    Beiträge
    378
    • 25. Mai 2005 um 15:33
    • #2

    http://de.selfhtml.org/html/transit/scripts.htm
    http://de.selfhtml.org/javascript/objekte/navigator.htm
    http://de.selfhtml.org/javascript/obj…tm#java_enabled

  • MarvinTheRobot
    Punkte
    7.308
    Beiträge
    1.368
    • 25. Mai 2005 um 15:56
    • #3

    und? so weit bin ich ja schon längst.

    die browserabfrage ist schon da, ich weiss auch mittels if(document.all) ob das ding ein browser is der meine anforderungen unterstützt oder nicht.

    das schwierige ist die anzeige.

    PHP
    if(document.all) {
    mach mir einen iframe an einer bestimmten stelle hin
    }
    else {
    mach mir ein textfeld an dieselbe stelle wo eigentlich ein iframe hin sollte
    }

    das sollte nach möglichkeit in so gut wie allen "standardbrowsern" funken.

    btw: document.all is nur ein beispiel. meine browsersnifferei is etwas umfangreicher als das.

    lg, Phil.

  • epi.um
    Punkte
    2.055
    Beiträge
    378
    • 25. Mai 2005 um 16:09
    • #4

    Probiers mal mit "Datendateien als Objekt einbinden" unter html/multimedia und <iframes> in einem js script reinpacken funkt net?

    like: <js script wenn das mache <iframe></iframe> sonst <text></text> />
    wobei mit divs zu arbeiten schöner ist als mit iframes, da du net auf "Transitional" setzten musst, sondern eben ein "schönes html dann hast"

    Kannst du mal den code mit den divs und des js posten?

  • MarvinTheRobot
    Punkte
    7.308
    Beiträge
    1.368
    • 25. Mai 2005 um 16:22
    • #5

    jo klar, wenn ich daheim bin mach ich das.

    im prinzip hab ichs aber so:

    PHP
    <style>
    .show {
    display:block;
    }
    .hide {
    display:none;
    }
    </style>
    <script>
    function check() {
    if(document.all) {
          document.getElementById('iframediv').className='show';
           document.getElementById('textfielddiv').className='hide';
    }
    else {
           document.getElementById('iframediv').className='hide';
            document.getElementById('textfielddiv').className='show';
    }
    }
    </script>
    
    
    <body onload="check()">
    <div id="iframediv">
    mein iframe
    </div>
    <div id="textfielddiv">
    mein textfeld
    </div>
    </body>
    Alles anzeigen

    is jetz ein bissl pseudocodig... aber im prinzip funkts so. nur den genauen code hab ich wie oben gsagt daheim. :)

  • Fup
    Punkte
    1.460
    Beiträge
    291
    • 25. Mai 2005 um 17:43
    • #6
    Zitat von MarvinTheRobot

    ich habs im moment so gelöst dass ich beide elemente in jeweils einem <div> mit einer id geschachtelt hab und dann einfach wenn document.all erfüllt ist div nummer eins auf display:block und div nummer 2 auf display:none (natürlich genauso in der umgekehrten variante) gesetzt..... was aber net wirklich schön ist.

    ich könnt genauso mit php eine funktion schreiben die je nachdem welcher browser zugreift ein anderes file includet.... aber das sollt doch auch locker mit JS gehn oder?

    lg, Phil.

    Sicher gehts mit JavaScript, nur wie du schon sagtest, von schön (elegant) etc. gelöst ist es bei weitem nicht, da du ja beides in der Html hast.

  • MarvinTheRobot
    Punkte
    7.308
    Beiträge
    1.368
    • 25. Mai 2005 um 18:00
    • #7

    eben. mit document.writeln wollt ichs dann machen, aber da müsst ich ja das komplette dokument neu von jscript erstellen lassen, was auch ein horror is.

  • lerod
    Punkte
    1.620
    Beiträge
    315
    • 25. Mai 2005 um 20:38
    • #8

    wieso komplett neu erstellen?

    ich denke, an der vorhergesehenen stelle einfach das javascript einfügen, die abfrage durchführen und mittels document.writeln die nötigen zeilen an der stelle gleich ausgeben lassen. javascript wird nämlich beim aufbau sofort interpretiert.

  • epi.um
    Punkte
    2.055
    Beiträge
    378
    • 26. Mai 2005 um 14:42
    • #9

    naja direkt in so einem dokument mit js herumpfuschen ist aber ah nix
    aber unter selfhtml/js/objektreferenz/style müsstes du was finden, wo man net direkt das Dokument ändert

    Zitat von Fup

    Sicher gehts mit JavaScript, nur wie du schon sagtest, von schön (elegant) etc. gelöst ist es bei weitem nicht, da du ja beides in der Html hast.

    Was meinst du mit "da du ja ..."? alles in einem html dokument? kann man ja in seperaten dateien platzieren...

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum