Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277

    Posizionare la barra di scorrimento

    Ciao a tutti.

    Vi sottopongo un problema che incontro spessissimo e vorrei risolvere.

    Supponiamo di avere una pagina molto 'lunga' come quella di questo forum, che ha quindi una barra di scorrimento laterale alla sua destra.

    Supponiamo che voglia accedere a questa pagina, posizionandomi su un particolare thread (ad es. al centro della pagina). Ovvero vorrei accedere alla pagina con la barra laterale a merà o cmq in una determinata posizione. Come posso fare?

    grazie mille per l'aiuto!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277
    Ehi, un po' di entusiasmo!

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277
    Ma nessuno mi può dare una risposta?....

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    rileva la posizione di un elemento di riferimento, nell' esempio
    <div id="pippo">pippo</div>
    dall' angolo in alto a sinistra del documento
    (in pratica, le coordinate assolute dell' elemento) con
    codice:
    function getCoords(el){
    	var c={x: 0, y: 0};
    	while (el) {
    		c.x+=el.offsetLeft;
    		c.y+=el.offsetTop;
    		el=el.offsetParent;
    	}
    	return c;
    }
    e scrolla a questo valore
    codice:
    function setScrollTo(id){
    	var el=document.getElementById(id);
    	self.scrollTo(0,getCoords(el).y);
    }
    il tutto richiamato onload
    codice:
    window.onload=function(){setScrollTo('pippo');}
    ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    277
    Ti ringrazio!!!!!

    Scusami ma essendo quasi a zero su JS, ti posso chiedere un'ulteriore cosa:

    il codcie:
    Codice PHP:
    <SCRIPT language="JavaScript">
    function 
    getCoords(el){
        var 
    c={x0y0};
        while (
    el) {
            
    c.x+=el.offsetLeft;
            
    c.y+=el.offsetTop;
            
    el=el.offsetParent;
        }
        return 
    c;
    }
    function 
    setScrollTo(id){
        var 
    el=document.getElementById(id);
        
    self.scrollTo(0,getCoords(el).y);
    }
    window.onload=function(){setScrollTo('yy');}
    </SCRIPT> 
    è sufficiente metterlo in cima alla pagina chiamata? Oppure devo inserirlo in un altro modo?

    Grazie mille!!

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    come la stragrande maggioranza degli script va nell' head, o meglio ancora esternamente,
    ma non e' determinante

    quello che e' determinante e' che l' onload non venga sovrascritto da altri window.onload
    o da <body onload="">
    quindi prova prima in una pagina dove agli script non possano interferire

    se questo fosse il problema in script/discussioni utili vi e' almeno un link al riguardo che spiega come risolvere

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.