Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Menu' JS + frames

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    26

    Menu' JS + frames

    Ciao ragazzi,

    volevo chiedervi se qualcuno di voi può aiutarmi a uscire da questa situazione:

    Voglio utilizzare un javascript (ricevuto da voi tramite mailing list un po' di mesi fa) che visualizza un menu' a scomparsa da sinistra.
    Vi pasto il codice in modo che possiate vederlo:

    <script language="JavaScript1.2">

    var slidemenu_width=180
    var slidemenu_reveal=10
    var slidemenu_top=70

    var ns4=document.layers?1:0
    var ie4=document.all&&navigator.userAgent.indexOf("Ope ra")==-1
    var ns6=document.getElementById&&!document.all?1:0

    if (ie4||ns6)
    document.write('<div id="slidemenubar2" style="left:'+((slidemenu_width-slidemenu_reveal)*-1)+'; top:'+slidemenu_top+'; width:'+slidemenu_width+'" onMouseover="pull()" onMouseout="draw()">')
    else if (ns4){
    document.write('<style>\n#slidemenubar{\nwidth:'+s lidemenu_width+';}\n<\/style>\n')
    document.write('<layer id="slidemenubar" left=0 top='+slidemenu_top+' width='+slidemenu_width+' onMouseover="pull()" onMouseout="draw()" visibility=hide>')
    }

    var sitems=new Array()

    sitems[0]=["<div align='center'><font face='Verdana'>Menù</font></div>", ""]
    sitems[1]=["Visita Html.it", "http://www.html.it/"]
    sitems[2]=["Script e tutorial Php", "http://freephp.html.it"]
    sitems[3]=["Articoli Asp", "http://freeasp.html.it"]
    sitems[4]=["Loop per Flash-mx", "http://flash-mx.html.it/"]
    sitems[5]=["Link 5", "#"]
    sitems[6]=["Link 6", "#"]
    sitems[7]=["Link 7", "#"]
    sitems[8]=["Link 8", "#"]

    var target=""

    /////////////////////////////////////////////////////////

    if (ie4||ns4||ns6){
    for (i=0;i<sitems.length;i++){
    if (sitems[i][1])
    document.write('<a href="'+sitems[i][1]+'" target="'+target+'">')
    document.write(sitems[i][0])
    if (sitems[i][1])
    document.write('</a>')
    document.write('
    \n')
    }
    }

    function regenerate(){
    window.location.reload()
    }
    function regenerate2(){
    if (ns4){
    document.slidemenubar.left=((slidemenu_width-slidemenu_reveal)*-1)
    document.slidemenubar.visibility="show"
    setTimeout("window.onresize=regenerate",400)
    }
    }
    window.onload=regenerate2

    rightboundary=0
    leftboundary=(slidemenu_width-slidemenu_reveal)*-1

    if (ie4||ns6){
    document.write('</div>')
    themenu=(ns6)? document.getElementById("slidemenubar2").style : document.all.slidemenubar2.style
    }
    else if (ns4){
    document.write('</layer>')
    themenu=document.layers.slidemenubar
    }

    function pull(){
    if (window.drawit)
    clearInterval(drawit)
    pullit=setInterval("pullengine()",10)
    }
    function draw(){
    clearInterval(pullit)
    drawit=setInterval("drawengine()",10)
    }
    function pullengine(){
    if ((ie4||ns6)&&parseInt(themenu.left)<rightboundary)
    themenu.left=parseInt(themenu.left)+10
    else if(ns4&&themenu.left<rightboundary)
    themenu.left+=10
    else if (window.pullit){
    themenu.left=0
    clearInterval(pullit)
    }
    }

    function drawengine(){
    if ((ie4||ns6)&&parseInt(themenu.left)>leftboundary)
    themenu.left=parseInt(themenu.left)-10
    else if(ns4&&themenu.left>leftboundary)
    themenu.left-=10
    else if (window.drawit){
    themenu.left=leftboundary
    clearInterval(drawit)
    }
    }
    </script>


    C'e anche una parte di codice da mettere nei tag <head> che non vi ho incollato in quanto serve per modificare graficamente il menu'.

    Vorrei utilizzare questo script integrandolo con dei frames, in modo che quando il menu compare, avendoci passato sopra il puntatore del mouse e avendo cliccato su uno dei link, la pagina si apra nel frame di destra (che dovrebbe essere il mainFrame)invece che aprirsi in una nuova pagina facendo scomparire il menu di navigazione. In quest'ultimo modo, come se non bastasse, la pagina si apre nel frame di sinistra (dove c'e il menu') risultando quindi estremamente ristretta lasciando il frame di destra vuoto. Questo perche, suppongo, ho inserito l'intero codice dello script nei tag head e body del frame dove compare il menu, quinid le pagine html che gli aggiungo dopo le carica sempre nella pagina-frame di sinistra.

    In sintesi: con dreamweaver ho creato il set di frame. Quando li ho salvati lui mi ha creato tre pagine html: una è il frameset, una è il frame di destra e l'altra il frame di sinistra. Il problema sorge quando io creo delle nuove pagine html che voglio integrare nel frameset, e me le restituisce aprendo una nuova pagina nel frame di sinistra. Non so se mi son spiegato e chiedo scusa per la lunghezza del topic.
    Grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    non ho provato il codice ma segna qui il nome del frame di destinazione
    var target="nomeframe"
    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    26
    Ma cosi facendo, tutti i link presenti nei vari system[0,1,...] andranno sul frame principale indipendentemente l'uno dall'altro? puo accadere che una pagina associata, ad esempio, al system[1] venga caricata anche quando clicco sul collegamento associato al system[2]?
    Comunque ti ringrazio, provero' stasera a cas.

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    non ho capito, puoi spiegarti meglio?

    rileggendo: ogni sottomenù contiene i suoi link, se un link è presente solo in un sitems apparirà in un solo submenu, non c' è possibilità di "equivoci"

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    26
    Inutile che mi spieghi, visto che funziona. in var target="" ci ho messo mainFrame tra le virgolette ed è andato. Per adesso pero' ho provato soltanto con il primo link, piu' tardi provero' con il resto. Grazie Xinod

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.