Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: javascript: scroll

  1. #1

    javascript: scroll

    vorrei sapere esiste, e, in caso affermativo, avere un esempio di uno script javascript impostato come link onMouseOver per l'immagine in una pagina, faccia lo scroll in un altro frame.
    grazie in anticipo!
    FaBiu[S]

  2. #2
    prova così:

    ciao

  3. #3
    grazie mille!
    ma io vorrei precisamente che passando col mouse sopra l'immagine (onMouseOver) la pagina nell'altro frame facesse lo scroll, e fin qui ci siamo, ma che rimanendo col mouse sull'immagine la pagina continui a scorrere... è possibile?
    FaBiu[S]

  4. #4
    c'è qualcuno che sa se e come si può fare?
    FaBiu[S]

  5. #5
    <script language="javascript">
    var i = 0;
    var timer = 0;

    /* Funzione per interrompere lo scroll. */
    function stop()
    {
    if (timer) clearInterval(timer);
    }

    /* Questa funzione controlla se lo scroll è verso l'alto o verso il *
    * basso. */
    function start(index)
    {
    if (index == 5)
    {
    timer = setInterval("go(5)",50);
    }
    else
    {
    timer = setInterval("go(-5)",50);
    }
    }
    /* Funzione di scroll */
    function go(dat)
    {
    i += dat;
    if(i > 0) top.sinistra.window.scrollTo(0,i);
    }
    </script>
    </head>

    <body>




    <p onmouseover="start(-5)" onmouseout="stop()">Su</p>
    <p onmouseover="start(5)" onmouseout="stop()">Giù</p>
    ...

    Domanda:
    Come posso sapere quando è arrivato al limite inferiore ?
    La più grande forza a disposizione dell'umanità è la non violenza (Ghandi).
    (15/06/2003 - 16 points, 17 rembounds and 1 standing ovation x Admiral David Robinson ... San Antonio Spurs~ 2003/5 NBA champions)

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    visto che non ci sono proprietà che restituiscano l' altezza del documento (da quanto ricordi) forse conviene basarsi sempre sulla quantità di pixel già scrollati (*), x conoscerla:
    codice:
    function rFTop(){
    var fTop=0
    	if(document.all){
    		if(document.getElementById && document.compatMode!="BackCompat")
    			fTop=top.sinistra.document.documentElement.scrollTop
    		else 
    			fTop=top.sinistra.document.body.scrollTop
    	}
    	else fTop=top.sinistra.pageYOffset
    return fTop
    }
    alert(rFTop())
    se una volta effettuato lo scrollTo questa quantità non è cambiata sei giunto a fine documento

    * tra l' altro lo script da te postato, basando lo scroll su una variabile, può dare risultati inaspettati:
    a mano potrei scrollare il documento con le normali scrollbar
    oppure fare un refresh ritrovandomi con il documento scrollato ma con la variabile azzerata

    ciao

  7. #7
    grazie Xinod!
    ma credo che, anche se il mio animo di programmatore in genere rifiuta un codice che non prevede la totalità delle azioni che l'utente può fare adattandosi alla situazione, per questa volta utilizzerò il codice fornitomi da bigmaul (grazie 1000 anke a te!) in quanto, non sono così esperto in javascript da applicare il suggerimento che mi ai dato per il calcolo dei pixel sul codice precedente.
    a meno ke un anima buona (bigmaul, ad esempio ) non mi fornisca il codice corretto...
    saluti!
    FaBiu[S]

  8. #8
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    ma io stavo rispondendo a Bigmaul
    Originariamente inviato da bigmaul
    Domanda:
    Come posso sapere quando è arrivato al limite inferiore ?
    ciao

  9. #9
    Originariamente inviato da Xinod
    ma io stavo rispondendo a Bigmaul

    ciao
    uh, sorry!
    FaBiu[S]

  10. #10
    <script language="javascript">
    <!--
    var i = 0;
    var timer = 0;
    var position = 0;
    var fTop;

    /* Posizione attuale dello scroll. */
    function rFTop()
    {
    fTop=top.sinistra.document.body.scrollTop;
    if (i > fTop) i = fTop;
    return fTop;
    }

    /* Funzione per interrompere lo scroll. */
    function stop()
    {
    if (timer) clearInterval(timer);
    if (position) clearInterval(position);
    }

    /* Questa funzione controlla se lo scroll è verso l'alto o verso il *
    * basso. */
    function start(index)
    {
    position = setInterval("rFTop()",50);
    if(index == 5)timer = setInterval("go(5)",50);
    else timer = setInterval("go(-5)",50);
    }
    /* Funzione di scroll */
    function go(dat)
    {
    i += dat;
    if(i > 0) top.sinistra.window.scrollTo(0,i);
    }

    //-->
    </script>
    </head>

    <body>




    <p onmouseover="start(-5)" onmouseout="stop()">Su</p>
    <p onmouseover="start(5)" onmouseout="stop()">Giù</p>
    ...
    Ho modificato il precedente x fare prima...cmq è testato su Explorer (e va bene :tongue: )



    P.S. Eventuali modifiche e/o migliorie sono sempre ben accette
    La più grande forza a disposizione dell'umanità è la non violenza (Ghandi).
    (15/06/2003 - 16 points, 17 rembounds and 1 standing ovation x Admiral David Robinson ... San Antonio Spurs~ 2003/5 NBA champions)

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.