Jan82: DIV Container mit Paramter in URL aktivieren

Beitrag lesen

Hallo @all,
vielen Dank für die Rücklmeldungen. Nachstehend der Code zum Verständnis:

<script type="text/javascript">
var layer = new Array();
layer[0] = 'layer1';
layer[1] = 'layer2';
layer[2] = 'layer3';
layer[3] = 'layer31';
layer[4] = 'layer32';
layer[5] = 'layer4';
layer[6] = 'teaser';

function switch_layer(id)
{ if(document.getElementById(id).style.display="none")
{ for(i=0;i<layer.length;i++)
{ document.getElementById(layer[i]).style.display="none"; }
  document.getElementById(id).style.display="block";}
  else
{ document.getElementById(id).style.display="none"; }
}

</script>
...
<a id="Nav" onclick="switch_layer('layer1'); return false" href="layer1.html">
...

Die Links haben also eine Weiche, sollte JS nicht erlaubt sein (insofern "barrierefrei" auch wenn das ScreenReader nach wie vor Probleme haben dürfte). Nun ist die Frage berechtigt, warum dann der Quatsch mit der URL? Ist einfach eine Geschmackssache. Ich findes es "schöner" wenn der User auf einer html bleibt und hier über JS navigieren kann...auch wenn ich mir vorstellen kann, dass es programmiertechnisch nicht sauber ist.

@Gunnar: Du nennst im Beispiel das hidden-Attribut. Wo ist der Unterschied? display=block oder hidden=false bringen doch den selben effekt?!

Mit Blick auf eure Hinweise scheint es aber keine Lösung dafür zu geben, dass ich auf einer anderen Website bin (www.seite.de) und hier mit einem Link auf meine index.html gelange aber eben nicht der layer1 angezeigt wird (wie es beim Standard-Aufruf von www.domain.de der Fall ist), sondern der layer2 :-(

Sollte noch jemand eine Idee haben, bin ich gan Ohr.
Habt vielen Dank.