Visualizzazione dei risultati da 1 a 7 su 7

Discussione: coda effetti di jquery

  1. #1
    Utente di HTML.it L'avatar di AvOJaromil
    Registrato dal
    Feb 2006
    residenza
    laddove si stagiona formaggio dentro a dei grossi buchi di tufo
    Messaggi
    549

    coda effetti di jquery

    codice:
    $("#carrello").bind(
        {
            mouseenter: function()
            {
                $(this).animate({'margin-left' : '+=170px'},'slow',function(){$("#img-acquista").hide("fast")})
            },
            mouseleave: function()
            {
                $(this).animate({'margin-left' : '-=170px'},'slow',function(){$("#img-acquista").show("fast")})
            },
        
        });
    con questo codice si verifica un effetto sgradevole. in pratica sul lato sinistro dello schermo ho piazzato un div #carrello che scompare quasi completamente. passando sopra ad una maniglia compresa in questo div#carrello parte l'animazione che fa uscire dal lato il pannello. purtroppo capita che ci si passi sopra col mouse parecchie volte oppure che quando ci si passa sopra poi si finisce con il cursore del mouse fuori dalla finestra del browser e così il pannello impazzisce aprendosi e chiudendosi a ripetizione diverse volte senza possibilità di fermarlo.

    come posso risolvere?

    grazie mille
    "homer sei tonto come un mulo e due volte più brutto. se uno sconosciuto ti offre un passaggio tu devi accettarlo..."

    www.flickr.com/photos/asciella/
    www.lastfm.it/user/qvaioe/

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Prova stoppando l'animazione sugli eventi

    codice:
    $("#carrello").bind(
        {
            mouseenter: function()
            {
                $(this).stop(true);
                $(this).animate({'margin-left' : '+=170px'},'slow',function(){$("#img-acquista").hide("fast")})
            },
            mouseleave: function()
            {
                $(this).stop(true);
                $(this).animate({'margin-left' : '-=170px'},'slow',function(){$("#img-acquista").show("fast")})
            },
        
        });

  3. #3
    Utente di HTML.it L'avatar di AvOJaromil
    Registrato dal
    Feb 2006
    residenza
    laddove si stagiona formaggio dentro a dei grossi buchi di tufo
    Messaggi
    549
    eh no, purtroppo no.
    con quella aggiunta se passo sopra al pannello e poi col cursore del mouse esco subito dalla fiestra del browser il pannello scorre indietro fino a scomparire totalmente dalla finestra e non c'è più modo di farlo ritornare a destra....
    "homer sei tonto come un mulo e due volte più brutto. se uno sconosciuto ti offre un passaggio tu devi accettarlo..."

    www.flickr.com/photos/asciella/
    www.lastfm.it/user/qvaioe/

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da AvOJaromil
    eh no, purtroppo no.
    con quella aggiunta se passo sopra al pannello e poi col cursore del mouse esco subito dalla fiestra del browser il pannello scorre indietro fino a scomparire totalmente dalla finestra e non c'è più modo di farlo ritornare a destra....
    Prova a stopparlo solo sul primo evento

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova così
    codice:
    $("#carrello").bind(
        {
            mouseenter: function()
            {
                $(this).stop().animate({'margin-left' : '+=170px'},'slow',function(){$("#img-acquista").hide("fast")})
            },
            mouseleave: function()
            {
                $(this).stop().animate({'margin-left' : '-=170px'},'slow',function(){$("#img-acquista").show("fast")})
            }
        });
    Chiaramente tutto racchiuso nel ready, eventualmente prova anche a cambiare bind con live
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Utente di HTML.it L'avatar di AvOJaromil
    Registrato dal
    Feb 2006
    residenza
    laddove si stagiona formaggio dentro a dei grossi buchi di tufo
    Messaggi
    549
    purtroppo ancora nulla....ho provato come dicevi tu andrea ma il problema rimane...ovvero entrando e uscendo velocemente dal pannello questo poi scompare sulla sinistra....
    ora ho ripristinato lo script come era originariamente..però se vi serve vedere questo è il link : http://www.vendettanonpagapegno.com/

    ancora grazie.
    "homer sei tonto come un mulo e due volte più brutto. se uno sconosciuto ti offre un passaggio tu devi accettarlo..."

    www.flickr.com/photos/asciella/
    www.lastfm.it/user/qvaioe/

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Hai molti script nella pagina e fare del debug diventa difficile per bloccare animate la sintassi è $(this).stop().animate se non va non saprei
    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 © 2025 vBulletin Solutions, Inc. All rights reserved.