Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Menu a tendina su due colonne

    Salve,
    ho scaricato un codice javascript e css che al passaggio del mouse su un link mi fa uscire un menu a tendina con all'interno una serie di links che sono memorizzati un un array. Questi ultimi ovviamente escono uno sotto l'altro.
    Funziona tutto.. ma il mio problema è che nella tendina avrei tanti links da inserire allora volevo sapere come modificare il codice in modo tale da fare uscire colonne di 10 link uno al fianco di un altro (in modo tale da sviluppare la tendina in orizzontale e non in verticale)... GRAZIE IN ANTICIPO.. .

    ---------link---------------
    link


    --------codice css-----------------------
    <style type="text/css">

    #dropmenudiv{
    position:absolute;
    border:0px solid black;
    border-bottom-width: 0;
    FONT-SIZE: 10px; COLOR: #f1eee5; FONT-FAMILY: Arial, Helvetica, sans-serif;
    line-height:12px;
    z-index:100;
    margin-top:5px;
    margin-left:0px;
    padding-left:5px;
    padding-right:5px;
    background-color: #333331;
    }

    #dropmenudiv a{
    width: 100%;
    display: block;
    FONT-SIZE: 10px; COLOR: #f1eee5; FONT-FAMILY: Arial, Helvetica, sans-serif;
    text-indent: 3px;
    /*border-bottom: 0px outset #FFFFFF;*/
    margin-bottom:2px;
    padding: 1px 0;
    text-decoration: none;
    font-weight: none;
    background-color: #333331;
    }

    #dropmenudiv a:hover{ /*hover background color*/
    FONT-SIZE: 10px; COLOR: #E3961B; FONT-FAMILY: Arial, Helvetica, sans-serif;
    background-color: #333331;
    }

    </style>

    ---------codice javascript------------------

    <script type="text/javascript">

    var menu8=new Array()
    menu[1]="pagina
    menu[2]="pagina
    menu[3]="pagina
    menu[4]="pagina
    menu[5]="pagina
    menu[6]="pagina
    .
    .
    .
    menu[50]="pagina

    var menuwidth='195px' //default menu width
    var menubgcolor='#333331' //menu bgcolor
    var disappeardelay=250 //menu disappear speed onMouseout (in miliseconds)
    var hidemenu_onclick="yes" //hide menu when user clicks within menu?

    /////No further editting needed

    var ie4=document.all
    var ns6=document.getElementById&&!document.all

    if (ie4||ns6)
    document.write('<div id="dropmenudiv" style="visibility:hidden;width:'+menuwidth+';backg round-color:'+menubgcolor+'" onMouseover="clearhidemenu()" onMouseout="dynamichide(event)"></div>')

    function getposOffset(what, offsettype){
    var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
    var parentEl=what.offsetParent;
    while (parentEl!=null){
    totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
    parentEl=parentEl.offsetParent;
    }
    return totaloffset;
    }

    function showhide(obj, e, visible, hidden, menuwidth){
    if (ie4||ns6)
    dropmenuobj.style.left=dropmenuobj.style.top=-500
    if (menuwidth!=""){
    dropmenuobj.widthobj=dropmenuobj.style
    dropmenuobj.widthobj.width=menuwidth
    }
    if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover")
    obj.visibility=visible
    else if (e.type=="click")
    obj.visibility=hidden
    }

    function iecompattest(){
    return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
    }

    function clearbrowseredge(obj, whichedge){
    var edgeoffset=0
    if (whichedge=="rightedge"){
    var windowedge=ie4 && !window.opera? iecompattest().scrollLeft+iecompattest().clientWid th-15 : window.pageXOffset+window.innerWidth-15
    dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
    if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
    edgeoffset=dropmenuobj.contentmeasure-obj.offsetWidth
    }
    else{
    var topedge=ie4 && !window.opera? iecompattest().scrollTop : window.pageYOffset
    var windowedge=ie4 && !window.opera? iecompattest().scrollTop+iecompattest().clientHeig ht-15 : window.pageYOffset+window.innerHeight-18
    dropmenuobj.contentmeasure=dropmenuobj.offsetHeigh t
    if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure){ //move up?
    edgeoffset=dropmenuobj.contentmeasure+obj.offsetHe ight
    if ((dropmenuobj.y-topedge)<dropmenuobj.contentmeasure) //up no good either?
    edgeoffset=dropmenuobj.y+obj.offsetHeight-topedge
    }
    }
    return edgeoffset
    }

    function populatemenu(what){
    if (ie4||ns6)
    dropmenuobj.innerHTML=what.join("")
    }

    function dropdownmenu(obj, e, menucontents, menuwidth){
    if (window.event) event.cancelBubble=true
    else if (e.stopPropagation) e.stopPropagation()
    clearhidemenu()
    dropmenuobj=document.getElementById? document.getElementById("dropmenudiv") : dropmenudiv /*qui*/
    populatemenu(menucontents)

    if (ie4||ns6){
    showhide(dropmenuobj.style, e, "visible", "hidden", menuwidth)
    dropmenuobj.x=getposOffset(obj, "left")
    dropmenuobj.y=getposOffset(obj, "top")
    dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+"px"
    dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+"px"
    }

    return clickreturnvalue()
    }

    function clickreturnvalue(){
    if (ie4||ns6) return false
    else return true
    }

    function contains_ns6(a, b) {
    while (b.parentNode)
    if ((b = b.parentNode) == a)
    return true;
    return false;
    }

    function dynamichide(e){
    if (ie4&&!dropmenuobj.contains(e.toElement))
    delayhidemenu()
    else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
    delayhidemenu()
    }

    function hidemenu(e){
    if (typeof dropmenuobj!="undefined"){
    if (ie4||ns6)
    dropmenuobj.style.visibility="hidden"
    }
    }

    function delayhidemenu(){
    if (ie4||ns6)
    delayhide=setTimeout("hidemenu()",disappeardelay)
    }

    function clearhidemenu(){
    if (typeof delayhide!="undefined")
    clearTimeout(delayhide)
    }

    if (hidemenu_onclick=="yes")
    document.onclick=hidemenu

    </script>

  2. #2
    nessun aiutino??????

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    l' aiutino e' che dovresti usare un menu' piu' accessibile con i link che gia' presenti nel markup e non "scritti" da javascript

    comunque la tipologia di menu' che cerchi si chiama mega dropdown, ci sono molti esempi/tutorial
    tipo http://www.sohtanaka.com/web-design/...-w-css-jquery/
    e, se non vado errato, anche qui su html.it

    si potrebbe provare a sistemare quello che hai postato ma, ripeto, non ne vale la pena

  4. #4
    Si infatti già stavo procedendo....molto più semplice..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.