Visualizzazione dei risultati da 1 a 3 su 3

Discussione: SFIDA: layer e anchor!

  1. #1

    SFIDA: layer e anchor!

    Ciao a tutti!
    Semplice:
    un testo abbastanza lungo che scrolla all'interno di un layer.
    Funziona benissimo, ecco lo script:
    codice:
    <html>
    <head>
    <title>SCROLL!</title>
    </head>
    
    <body>
    <script language="JavaScript1.2">
    
    iens6=document.all||document.getElementById
    ns4=document.layers
    
    //VELOCITA' DELLO SCROLLER (+ALTA=+VELOCE)
    var speed=5
    
    if (iens6){
    document.write('<div id="container" style="position:relative;width:350;height:180;border:0px solid black;overflow:hidden">')
    document.write('<div id="content" style="position:absolute;width:330;left:10;top:1">')
    }
    </script>
    <ilayer name="nscontainer" width=330 height=65 clip="0,0,250,65" above=""> 
    <layer name="nscontent" width=330 height=65 below=""> 
    
    Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!
    </layer>
    </ilayer>
    <script language="JavaScript1.2">
    if (iens6)
    document.write('</div></div>')
    </script>
    <table width="340px" cellpadding="0" cellspacing="0" height="12">
    <tr> 
    <td width="90%" valign="bottom"> 
    <p align="right">[img]../media/gif/pixel.gif[/img]</p>
    </td>
    <td width="5%" valign="bottom"> 
    <p align="right">[img]up.gif[/img]</p>
    </td>
    <td width="5%" valign="bottom"> 
    <div align="right">[img]down.gif[/img]</div>
    </td>
    </table>
    <script language="JavaScript1.2">
    if (iens6){
    var crossobj=document.getElementById? document.getElementById("content") : document.all.content
    var contentheight=crossobj.offsetHeight
    }
    else if (ns4){
    var crossobj=document.nscontainer.document.nscontent
    var contentheight=crossobj.clip.height
    }
    
    function movedown(){
    if (iens6&&parseInt(crossobj.style.top)>=(contentheight*(-1)+100))
    crossobj.style.top=parseInt(crossobj.style.top)-speed
    else if (ns4&&crossobj.top>=(contentheight*(-1)+100))
    crossobj.top-=speed
    movedownvar=setTimeout("movedown()",100)
    }
    
    function moveup(){
    if (iens6&&parseInt(crossobj.style.top)<=0)
    crossobj.style.top=parseInt(crossobj.style.top)+speed
    else if (ns4&&crossobj.top<=0)
    crossobj.top+=speed
    moveupvar=setTimeout("moveup()",100)
    
    }
    
    function getcontent_height(){
    if (iens6)
    contentheight=crossobj.offsetHeight
    else if (ns4)
    document.nscontainer.document.nscontent.visibility="show"
    }
    window.onload=getcontent_height
    </script>
    </body>
    </html>
    Ora:
    come detto il testo che devo scrollare è molto lungo.
    Ho pensato di antecedere il testo con un bel sommario e, tramite gli 'anchor', spostarmi all'interno del testo nel layer.
    Risultato? Al click sulla voce nel sommario effettivamente si sposta al punto indicato dall'anchor ma ...
    SE POI CERCO DI FAR RISCROLLARE IL TESTO ... ZERO!STA LI!

    codice:
    <html>
    <head>
    <title>SCROLL!</title>
    </head>
    
    <body>
    <script language="JavaScript1.2">
    
    iens6=document.all||document.getElementById
    ns4=document.layers
    
    //VELOCITA' DELLO SCROLLER (+ALTA=+VELOCE)
    var speed=5
    
    if (iens6){
    document.write('<div id="container" style="position:relative;width:350;height:180;border:0px solid black;overflow:hidden">')
    document.write('<div id="content" style="position:absolute;width:330;left:10;top:1">')
    }
    </script>
    <ilayer name="nscontainer" width=330 height=65 clip="0,0,250,65" above=""> 
    <layer name="nscontent" width=330 height=65 below=""> 
    
    <div align="JUSTIFY">VAI A CIAO! 
    
    Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao! 
    
    
    
    
    <a name="#ciao">TITOLO: CIAO!</a>
    
    Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao!Ciao! 
    </div>
    </layer>
    </ilayer>
    <script language="JavaScript1.2">
    if (iens6)
    document.write('</div></div>')
    </script>
    <table width="340px" cellpadding="0" cellspacing="0" height="12">
    <tr> 
    <td width="90%" valign="bottom"> 
    <p align="right">[img]../media/gif/pixel.gif[/img]</p>
    </td>
    <td width="5%" valign="bottom"> 
    <p align="right">[img]up.gif[/img]</p>
    </td>
    <td width="5%" valign="bottom"> 
    <div align="right">[img]down.gif[/img]</div>
    </td>
    </table>
    <script language="JavaScript1.2">
    if (iens6){
    var crossobj=document.getElementById? document.getElementById("content") : document.all.content
    var contentheight=crossobj.offsetHeight
    }
    else if (ns4){
    var crossobj=document.nscontainer.document.nscontent
    var contentheight=crossobj.clip.height
    }
    
    function movedown(){
    if (iens6&&parseInt(crossobj.style.top)>=(contentheight*(-1)+100))
    crossobj.style.top=parseInt(crossobj.style.top)-speed
    else if (ns4&&crossobj.top>=(contentheight*(-1)+100))
    crossobj.top-=speed
    movedownvar=setTimeout("movedown()",100)
    }
    
    function moveup(){
    if (iens6&&parseInt(crossobj.style.top)<=0)
    crossobj.style.top=parseInt(crossobj.style.top)+speed
    else if (ns4&&crossobj.top<=0)
    crossobj.top+=speed
    moveupvar=setTimeout("moveup()",100)
    
    }
    
    function getcontent_height(){
    if (iens6)
    contentheight=crossobj.offsetHeight
    else if (ns4)
    document.nscontainer.document.nscontent.visibility="show"
    }
    window.onload=getcontent_height
    </script>
    </body>
    </html>
    Credo reimposti il top del layer e non mi fa piu tornare su!Mi fa muovere su e giu SOLO da quello che lui considera un nuovo TOP, ovvero quello dettato dall'anchor.
    Ora vediamo se c'è qualche buon'anima che riesce a risolvere in qualche modo questa cosa, ammesso si possa...
    Io non ci sono ancora arrivato ma ci riprovo ora...

    GRAZIE A TUTTI!
    @lex!

  2. #2
    UP!
    Per favore ... HELP ME!
    @lex!

  3. #3
    Dai ragazzi, help me!
    Ho capito perchè non va lo script: lo scroll del layer agisce sul top dello stesso!
    Come posso modificarlo, facendolo agire su un altro parametro???
    Spiego bene come ho strutturato il tutto:
    ho suddiviso il mio testo in 5 paragrafi.
    Ho assegnato un anchor ad ogni inizio di paragrafo.
    All'inizio del testo ho messo un sommario, con 5 link, ognuno legato ad un rispettivo anchor.
    Poi ho messo un altro anchor all'inizio del testo (#top).
    Alla fine di ogni paragrafo, un link top fa tornare all'inizio di tutto il testo.
    Beh, in sostanza:
    seleziono ad esempio l'anchor nr.3 e va dove deve andare.
    scorro sino alla fine del paragrafo.
    trovo il link TOP.
    Ci clicco e risale ma non all'inizio ma ...
    calcola il top assegnato al click sull'achor 3 e da li aggiunge un tot che corrisponde a quanto ho scrollato a mano!
    Risultato? Risale a metà paragrafo e ovviamente non va bene!
    Non riesco a trovare un altro script (non pox usare flash) che mi aiuti a realizzare questa cosa.
    Questo script è esattamente quel che mi serve ma non so come modificarlo!
    Help me, please! E' importante!
    Grazie ancora a tutti.
    @lex!

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.