Blocco Menù

Posts: 18
Iscritto il: 27 Maggio 07

Ciao,
il mio "cliente" vorrebbe che il blocco del menù laterale a sinistra non fosse fisso in alto alla pagina, ma che si sposti con lo scroll della pagina. E' possibile?
Se si, cosa devo fare?

Grazie mille per l'aiuto!

Laura


Posts: 31
Iscritto il: 23 Gen 08

ciao,

ti posto queste righe di javascript, non penso funzioni cosi com'è perche le ho tirate fuori da un interfaccia che ho fatto qualche tempo fa. Le ho trovate su un sito ma non riesco a ri-trovarlo..

cmq prova a giocare con $(window).scroll perchè è quello che gestisce il "movimento"

var menuYloc = null;
h_name = "#user-block??";
/// 08-08-14 panels2 - in gestione contenuto c'è un errore con dimensions.js causato da .offset() [line 230]
menuYloc = parseInt($(h_name).css("top").substring(0,$(h_name).css("top").indexOf("px")));

$(window).scroll(function () {
offset = menuYloc+$(document).scrollTop()+"px";
$(h_name).animate({top:offset},{duration:500,queue:false});
});

l'ho usato su http://spacetotem.it, la barretta laterale a destra.. lo so non è un granchè ma dovrebbe andare come esempio Smiling

lu


Posts: 2028
Iscritto il: 01 Gen 07
Admin di Drupal ItaliaSviluppatore DrupalDrupal Monkey. Mangio moduli e API a colazioneTraduttore

Un consiglio, che può benissimo essere bypassato, se devi scrivere o inserire script all'interno di Drupal meglio farsi usando jQuery, in questo modo si evitano conflitti interni sopratutto con operazioni che si eseguono al caricamento della pagina. (vedi articoli di riferimento sul $(document).ready() multiplo e la gestione degli eventi in jQuery).

PS: muka, vedo che sei diventato un utente attivissimo nel rispondere e questo non può che fare piacere Laughing out loud

__________________

Ciao
    Mavimo
_________________
Io mio sito su Drupal, CFD e OpenFOAM (e se vi chiedete cosa c'entrano l'uno con l'altro.. bhè, non so nemmeno io la risposta Sticking out tongue )


Posts: 31
Iscritto il: 23 Gen 08

grazie, spero solo sia utile... cmq non temere ho un sacco di domande da fare anche io Laughing out loud
e giustamente come riportavi sopra è il caso di non dimenticare di incorniciare gli script con qualcosa tipo

if (Drupal.jsEnabled) {
$(document).ready(function(){
       //
      // here we go again
     //
    });
}

per evitare dei bel malditesta
lu
edit:
forse basta solo
if (Drupal.jsEnabled) {
// ?
}


Posts: 18
Iscritto il: 27 Maggio 07

Grazie per gli aiuti, ma essendo molto inesperta...non sono ancora riuscita!Sad
Dove inserisco il codice?nel file page.tlp.php?
Mi potresti dare proprio la parte di codice della barretta laterale che hai messo in http://spacetotem.it ?

Grazie ancora!


Posts: 31
Iscritto il: 23 Gen 08

il codice in spacetotem.it è questo

var menuYloc = null;
$(h_name).css("top", ($("#sidebar").offset().top + parseInt($("#sidebar").css("paddingTop").substring(0, $("#sidebar").css("paddingTop").indexOf("px")))) );
$(h_name).css("left", ($("#sidebar").offset().left + $("#sidebar").width() + 20));
menuYloc = parseInt($(h_name).css("top").substring(0,$(h_name).css("top").indexOf("px")))
$(window).scroll(function () {
offset = menuYloc+$(document).scrollTop()+"px";
if($(document).scrollTop() < ($("#content").height()))
$(h_name).animate({top:offset},{duration:500,queue:false});
});

ma ti consiglio di leggere (in inglese)
http://nettuts.com/html-css-techniques/creating-a-floating-html-menu-usi...
perchè lo spunto è partito da qui ed è sicuramente più chiaro

ciao lu


Condividi contenuti