AW: Wie gestaltet ihr eine Navigation?
Du kannst eine Navigation auch unterstützend mit Javascript herstellen. Sieht auch ordentlich aus.
Viel Spass
Beisspiel:
2leveltab.js
-----------------------------------------------
var mastertabvar=new Object()
mastertabvar.baseopacity=0
mastertabvar.browserdetect=""
function showsubmenu(masterid, id){
if (typeof highlighting!="undefined")
clearInterval(highlighting)
submenuobject=document.getElementById(id)
mastertabvar.browserdetect=submenuobject.filters? "ie" : typeof submenuobject.style.MozOpacity=="string"? "mozilla" : ""
hidesubmenus(mastertabvar[masterid])
submenuobject.style.display="block"
instantset(mastertabvar.baseopacity)
highlighting=setInterval("gradualfade(submenuobject)",50)
}
function hidesubmenus(submenuarray){
for (var i=0; i<submenuarray.length; i++)
document.getElementById(submenuarray).style.display="none"
}
function instantset(degree){
if (mastertabvar.browserdetect=="mozilla")
submenuobject.style.MozOpacity=degree/100
else if (mastertabvar.browserdetect=="ie")
submenuobject.filters.alpha.opacity=degree
}
function gradualfade(cur2){
if (mastertabvar.browserdetect=="mozilla" && cur2.style.MozOpacity<1)
cur2.style.MozOpacity=Math.min(parseFloat(cur2.style.MozOpacity)+0.1, 0.99)
else if (mastertabvar.browserdetect=="ie" && cur2.filters.alpha.opacity<100)
cur2.filters.alpha.opacity+=10
else if (typeof highlighting!="undefined") //fading animation over
clearInterval(highlighting)
}
function initalizetab(tabid){
mastertabvar[tabid]=new Array()
var menuitems=document.getElementById(tabid).getElementsByTagName("li")
for (var i=0; i<menuitems.length; i++){
if (menuitems.getAttribute("rel")){
menuitems.setAttribute("rev", tabid) //associate this submenu with main tab
mastertabvar[tabid][mastertabvar[tabid].length]=menuitems.getAttribute("rel") //store ids of submenus of tab menu
if (menuitems.className=="selected")
showsubmenu(tabid, menuitems.getAttribute("rel"))
menuitems.getElementsByTagName("a")[0].onmouseover=function(){
showsubmenu(this.parentNode.getAttribute("rev"), this.parentNode.getAttribute("rel"))
}
}
}
}
--------------------------------------------------------------------------------------------------
2leveltab.css
------------------
.basictab{
padding: 3px 0;
margin-left: 0;
font: bold 12px Verdana;
border-bottom: 1px solid gray;
list-style-type: none;
margin-bottom: 0;
text-align: left;
}
.basictab li{
display: inline;
margin: 0;
}
.basictab li a{
text-decoration: none;
padding: 3px 7px;
margin-right: 2px;
border: 1px solid gray;
border-bottom: none;
background-color: white;
color: black;
}
.basictab li a:visited{
color: black;
}
.basictab li a:hover{
background-color: #dbffff;
color: black;
}
.basictab li a:active{
color: black;
}
.basictab li.selected a{
position: relative;
top: 1px;
padding-top: 4px;
background-color: #dbffff;
color: black;
}
.submenustyle{
padding: 2px 1px;
border: 1px solid black;
border-top-width: 0;
width: auto;
display: none;
filter:alpha(opacity=0);
-moz-opacity:0;
}
* html .submenustyle{
width: 100%;
}
.submenustyle a{
border-right: 1px dashed black;
padding: 1px 5px;
text-decoration: none;
}
.submenustyle a:hover{
background-color: #ebffff;
}
-----------------------------------------------------------------------------------------------
<link rel="stylesheet" type="text/css" href="2leveltab.css" />
<script type="text/javascript" src="2leveltab.js"></script>
</head>
<body>
<ul id="maintab" class="basictab">
<li><a href="">Home</a></li>
<li class="selected" rel="tutorials"><a href="#">Link1</a></li>
<li rel="references"><a href="#">Link2▼</a></li>
<li><a href="">Link3</a></li>
</ul>
<div id="references" class="submenustyle">
<a href="">Unterseite1</a>
<a href="">Unterseite2</a>
<a href="">Unterseite3</a>
</div>
<div id="tutorials" class="submenustyle">
<a href="">Tutorials1</a>
<a href="">Tutorials2</a>
<a href="">Tutorials3</a>
<a href="">Tutorials4</a>
</div>
<script type="text/javascript">
initalizetab("maintab")
</script>
</body>