elemente in netscape ansprechen
cyber
- php
Hi!
ich habe einen div-container "navigation". in ihm möchte ich den inhalt ausgeben, der in der variable "pfad" der funktion navigation übergeben wird.
im IE funktioniert es mit document.all.navigation.innerHTML = "Sie Befinden sich hier: " + navigationspfad; prächtig.
wie muss ich den countainer im Netcape ansprechen??
vielen dank
cyber
<script language="javascript">
function navigation(pfad){
var browser=navigator.appname;
var navigationspfad = pfad;
if(browser=="Netscape"){
document.navigation.writeSie Befinden sich hier: " + navigationspfad;
}
else{
document.all.navigation.innerHTML = "Sie Befinden sich hier: " + navigationspfad;
}
}
</script>
<div id="navigation" name="navigation">Sie befinden sich hier: Startseite</div>
Hallo,
var browser=navigator.appname;
Das dürfte die schlechteste Methode sein, um eine Browserabfrage zu machen. 'navigator.appname' kann einen beliebigen String zurückliefern, der nicht unbedingt auf den tatsächlich verwendeten Browser schließen läßt.
Es ist besser, wenn man die statt diesem String die Fähigkeiten eines Browsers abfragt und darauf angepassten JS-Code ausliefert.
In allen neueren Browsern (IE ab 5.0 eingeschlossen) sollte das so aussehen:
document.getElementById('navigation').innerHTML = "...";
Wenn du eine Funktion haben willst, die auch noch NS4 und IE4 bedient, würde ich sowas voschlagen:
//fuer alle neueren Browser
if (document.getElementById && document.documentElement.innerHTML) {
document.getElementById('navigation').innerHTML = "...";
}
//fuer IE4
else if (document.all && document.documentElement.innerHTML)
document.all.navigation.innerHTML = "...";
}
//fuer NS4
else if (document.layers) {
document.navigation.write("...");
}
Gruß, Jan
thx... hat funktioniert!
Gruß cyber