Lo scrolling della pagina cliccando sui link interni alla stessa è un effetto di sicuro impatto per il navigatore, c’è addirittura chi lo ha utilizzato per creare dei siti di un’unica pagina. Vediamo quindi una delle tante soluzioni per realizzarlo, il risultato finale che otterremo sarà questo: demo scrolling
Per impostare lo scrolling sui link all’interno di una pagina per prima cosa va inserito il link al framework che vogliamo utilizzare, in questo caso jQuery.
Accediamo al sito di jQuery e scarichiamo l’ultima versione, in questo momento la 1.4.2. Salviamola in un file e inseriamolo nella cartella del nostro sito contenente i files Javascript, ad esempio la cartella js.
Ora rendiamo operativo jQuery inserendolo nell’head della pagina:
Il nostro sistema in questo momento è pronto per utilizzare il framework di jQuery, colleghiamogli quindi il codice che fa effettivamente quanto ci siamo prefissi, ovvero lo scrolling della pagina.
Sarebbe buona norma inserire il codice in un file a parte e posizionarlo nella cartella dei codici js, ma essendo un esempio mi sono concesso la licenza di inserirlo nella pagina stessa, ovviamente sempre nell’head della pagina.
$(function(){
$('a[href*=#]').click(function() {
if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')
&& location.hostname == this.hostname) {
var $target = $(this.hash);
$target = $target.length && $target || $('[name=' + this.hash.slice(1) +']');
if ($target.length) {
var targetOffset = $target.offset().top;
$('html,body').animate({scrollTop: targetOffset}, 1000);
return false;
}
}
});
});
A questo punto non ci resta che creare i link interni con le ancore, ottenendo il risultato finale: demo scrolling.
In base a come è scritta la funzione, tutti i link verso le ancore (#) all’interno della pagina attiveranno la funzione. L’unico accorgimento è quello di non modificare l’id=”top” dell’ancora in alto.
Potrete quindi settare a vostro piacimento la velocità dello scrolling; nella pagina di esempio è settato a 1000 millisecondi, ovvero 1 secondo.
La guida è stata liberamente tratta e tradotta dal sito CSS-Tricks.
Tags: jQuery, scrolling pagina, Web Design

Ciao,
ho provato, ma non ottengo l’effetto scroll.
Ho jquery 1.4.2.min.js ed inoltre ho copiato il codice in scroll.js, richiamandolo sotto il jquey.
[CODE]
………….
…………
$(document).ready(function(){
$(‘div.examples’).pngFix( );
});
…………
…………
Potrebbero essere gli altri script a dare noia?
Non vedendo il tuo codice è piuttosto difficile capire cosa ci sia che non va.
Sei sicuro di puntare correttamente il link verso jQuery?
Prova a ricostruire una pagina facendola tale e quale a quella dell’esempio e vedi se ti funziona.
Quindi prova ad implementarla nel tuo codice.
Se non sei sicuro del link verso jQuery puoi sempre usare il codice di Google:
http://code.google.com/intl/it-IT/apis/libraries/devguide.html#jquery
Grazie, per la risposta.
Il codice non lo vedi perché evidentemente ci sono, ahimè, delle restrizione sul codice da poter inserire sui commenti, lo riscrivo con le parentesi quadre.
[script type="text/javascript" src="js/jquery-1.4.2.min.js" ] [/script]
……………
[script type="text/javascript" src="pngFix/jquery.pngFix.pack.js"] [/script]
[script type="text/javascript"]
$(document).ready(function(){
$(‘div.examples’).pngFix( );
});
[/script]
………………………….
[script type="text/javascript" src="js/scroll.js" ] [/script]
Potrebbe essere il pngfix a dar noia?
p.s. credo di non aver ricevuto la notifica della tua risposta oppure è andata in spam.
Si, pngFix può dare dei problemi con gli script di scrolling.
In pratica tu vorresti mettere delle immagini in png con la trasparenza all’interno dei paragrafi che scrollano?