Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2014
    Messaggi
    52

    Jquery eventi in callback

    Salve a tutti, sto creando un div che al momento dell'hover la div si ingrandisce, mentre in caso del mouseleave la div si rimpicciolisce. Il problema è che per alcune mie esigenze voglio che prima di ingrandire la div mi imposti il padding, analogamente nel mouseleave dopo aver rimpicciolito la div il padding scompare, come posso fare questa successione di eventi?

    codice HTML:
     $("#totdiv").mouseleave(function(){
        $("#contenut").css("height","0px");          
        $("#login").css("height","0px");           
        $("#logcont").css("height","0px");},
      function(){
        $("#contenut").css("padding","0px");
    });
    ho provato a fare una cosa del genere ma non funziona probabilmente sbaglio qualcosa nella sintassi, mi esegue solo la seconda funziona

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Per usare l'evento mouseleave direttamente sull'elemento quest'ultimo deve esistere nel documento (#totdiv c'è quando richiami mouseleave?)
    codice:
    $(function(){
    $("#totdiv").mouseleave(function(){
        $("#contenut").css({"height":0,"padding":0});          
        $("#login").css("height","0px");           
        $("#logcont").css("height","0px");}
    });
    })
    P.S. non credo che l'evento abbia un callback http://api.jquery.com/mouseleave/
    Ultima modifica di cavicchiandrea; 28-02-2016 a 19:59
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2014
    Messaggi
    52
    Quote Originariamente inviata da cavicchiandrea Visualizza il messaggio
    Per usare l'evento mouseleave direttamente sull'elemento quest'ultimo deve esistere nel documento (#totdiv c'è quando richiami mouseleave?)
    codice:
    $(function(){
    $("#totdiv").mouseleave(function(){
        $("#contenut").css({"height":0,"padding":0});          
        $("#login").css("height","0px");           
        $("#logcont").css("height","0px");}
    });
    })
    P.S. non credo che l'evento abbia un callback http://api.jquery.com/mouseleave/
    #totdiv c'è, il codice che mi hai suggerito, ad eccezzione del padding, è quello che avevo scritto in precedenza, quello che ho provato a fare e stato creare un'animazione che al termine di una prima funzione me ne svolge un'altra dopo 0.7s di transizione impostanta nel css. Non voglio che il padding diventa 0 allo stesso momento dell'height ma a fine function

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Penso non sia possibile, e dubito che si possa eseguire una transizione css da jquery
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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 © 2024 vBulletin Solutions, Inc. All rights reserved.