Asp İle Açılır Menu
9
●2.671
- 28-06-2010, 18:33:12http://www.dynamicdrive.com/style/cs...side_bar_menu/ buradan orjinal haline ulsabilirsniz
css
<style type="text/css"> /*Credits: Dynamic Drive CSS Library */ /*URL: http://www.dynamicdrive.com/style/ */ .sidebarmenu ul{ margin: 0; padding: 0; list-style-type: none; font: bold 13px Verdana; width: 180px; /* Main Menu Item widths */ border-bottom: 1px solid #ccc; } .sidebarmenu ul li{ position: relative; } /* Top level menu links style */ .sidebarmenu ul li a{ display: block; overflow: auto; /*force hasLayout in IE7 */ color: white; text-decoration: none; padding: 6px; border-bottom: 1px solid #778; border-right: 1px solid #778; } .sidebarmenu ul li a:link, .sidebarmenu ul li a:visited, .sidebarmenu ul li a:active{ background-color: #012D58; /*background of tabs (default state)*/ } .sidebarmenu ul li a:visited{ color: white; } .sidebarmenu ul li a:hover{ background-color: black; } /*Sub level menu items */ .sidebarmenu ul li ul{ position: absolute; width: 170px; /*Sub Menu Items width */ top: 0; visibility: hidden; } .sidebarmenu a.subfolderstyle{ background: url(right.gif) no-repeat 97% 50%; } /* Holly Hack for IE \*/ * html .sidebarmenu ul li { float: left; height: 1%; } * html .sidebarmenu ul li a { height: 1%; } /* End */ </style> <script type="text/javascript"> //Nested Side Bar Menu (Mar 20th, 09) //By Dynamic Drive: http://www.dynamicdrive.com/style/ var menuids=["sidebarmenu1"] //Enter id(s) of each Side Bar Menu's main UL, separated by commas function initsidebarmenu(){ for (var i=0; i<menuids.length; i++){ var ultags=document.getElementById(menuids[i]).getElementsByTagName("ul") for (var t=0; t<ultags.length; t++){ ultags[t].parentNode.getElementsByTagName("a")[0].className+=" subfolderstyle" if (ultags[t].parentNode.parentNode.id==menuids[i]) //if this is a first level submenu ultags[t].style.left=ultags[t].parentNode.offsetWidth+"px" //dynamically position first level submenus to be width of main menu item else //else if this is a sub level submenu (ul) ultags[t].style.left=ultags[t-1].getElementsByTagName("a")[0].offsetWidth+"px" //position menu to the right of menu item that activated it ultags[t].parentNode.onmouseover=function(){ this.getElementsByTagName("ul")[0].style.display="block" } ultags[t].parentNode.onmouseout=function(){ this.getElementsByTagName("ul")[0].style.display="none" } } for (var t=ultags.length-1; t>-1; t--){ //loop through all sub menus again, and use "display:none" to hide menus (to prevent possible page scrollbars ultags[t].style.visibility="visible" ultags[t].style.display="none" } } } if (window.addEventListener) window.addEventListener("load", initsidebarmenu, false) else if (window.attachEvent) window.attachEvent("onload", initsidebarmenu) </script>
html
<div class="sidebarmenu"> <ul id="sidebarmenu1"> <li><a href="#">Item 1</a></li> <li><a href="#">Item 2</a></li> <li><a href="#">Folder 1</a> <ul> <li><a href="#">Sub Item 1.1</a></li> <li><a href="#">Sub Item 1.2</a></li> </ul> </li> <li><a href="#">Item 3</a></li> <li><a href="#">Folder 2</a> <ul> <li><a href="#">Sub Item 2.1</a></li> <li><a href="#">Folder 2.1</a> <ul> <li><a href="#">Sub Item 2.1.1</a></li> <li><a href="#">Sub Item 2.1.2</a></li> <li><a href="#">Sub Item 2.1.3</a></li> <li><a href="#">Sub Item 2.1.4</a></li> </ul> </li> </ul> </li> <li><a href="#">Item 4</a></li> </ul> </div> - 28-06-2010, 19:02:21Burada önemli olan HTML kısmı.
<div class="sidebarmenu"> <ul id="sidebarmenu1"> <li><a href="#">Item 1</a></li> <li><a href="#">Item 2</a></li> <li><a href="#">Folder 1</a> <ul> <li><a href="#">Sub Item 1.1</a></li> <li><a href="#">Sub Item 1.2</a></li> </ul> </li> <li><a href="#">Item 3</a></li> <li><a href="#">Folder 2</a> <ul> <li><a href="#">Sub Item 2.1</a></li> <li><a href="#">Folder 2.1</a> <ul> <li><a href="#">Sub Item 2.1.1</a></li> <li><a href="#">Sub Item 2.1.2</a></li> <li><a href="#">Sub Item 2.1.3</a></li> <li><a href="#">Sub Item 2.1.4</a></li> </ul> </li> </ul> </li> <li><a href="#">Item 4</a></li> </ul> </div>kısmını veritabanından okutmak lazım.
Bu da şu şekilde olabilir:
<div class="sidebarmenu"> <ul id="sidebarmenu1"> <% rs.Open "SELECT * FROM tablo1", Conn, 1, 3 If Not rs.Eof Then Do While Not rs.Eof %> <li><a href="#"><%=rs("baslik")%></a> <% rs1.Open "SELECT * FROM tablo2 WHERE ust_id = "& rs("id") &"", Conn, 1, 3 If Not rs1.Eof Then Response.Write "<ul>" Do While Not rs1.Eof %> <li><a href="#"><%=rs1("baslik")%></a></li> <% rs1.Movenext Loop Response.Write "</ul>" End If rs1.Close %></li> <% rs.Movenext Loop End If rs.Close %> </ul> </div>Bağlantı, kayıtsetleri ve tablo isimlerini kendi uygulamanıza uyarlamanız gerekiyor. - 28-06-2010, 19:21:26
<% sub subRecursive(ParentID, intLevel) dim objRs dim strSql strSql = "SELECT id, baslik FROM kategoriler WHERE ust_id = " & ParentID set objRs = objConn.Execute(strSql) if Not objRs.EOF then If intLevel <> 0 Then Response.Write vbNewLine & "<ul>" & vbNewLine do while Not objRs.EOF Response.Write "<li><a href=""#"">" & objRs("baslik") & "</a>" subRecursive objRs("id"), intLevel + 1 Response.Write "</li>" & vbNewLine objRs.MoveNext loop Response.Write "</ul>" & vbNewLine end if if Not objRs Is Nothing then objRs.Close end if set objRs = Nothing End sub %> <div class="sidebarmenu"> <ul id="sidebarmenu1"> <% subRecursive 0, 0 %> </ul> </div>Fonksiyonu http://forum.ceviz.net/asp/42229-rec...kaynaklar.html adresinden aldım. - 28-06-2010, 22:03:51sonuç olarak dediğinizi yapınca söyle birşey çıkıyor ortaya : http://www.ilhanreklam.net/yeni/menu.asp