Blocco Menù

6 contenuti / 0 new
Ultimo contenuto
Blocco Menù

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

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 :)

lu

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 :D

Ciao
Marco
--
My blog
Working at @agavee

grazie, spero solo sia utile... cmq non temere ho un sacco di domande da fare anche io :D
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) {
// ?
}

Grazie per gli aiuti, ma essendo molto inesperta...non sono ancora riuscita!:-(
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!

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