Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di amamax
    Registrato dal
    Feb 2001
    Messaggi
    562

    Prestazioni animazioni jquery diminuite, come mai?

    Ciao ragazzi,

    ho realizzato un menu laterale che se cliccato aumenta di dimensione in larghezza. Per questo uso un animate() che aumenta appunto il width.

    A livello fluidità d'animazione va alla grande, fintanto che però nel content del sito web non faccio delle importanti operazioni di each() per ogni cella di una tabella molto molto grande.

    Infatti dopo averle effettuate (e quindi terminate) la fluidità di quel div che si allarga di cui parlavo all'inizio, cala enormemente, tanto da aprirsi con salti di frame molto evidenti.

    Sembra quasi che il browser abbia usato molta memoria ed ora non riesce più a darne a quel div laterale o comunque in generale a tutta l'applicazione.

    Sapete dirmi cosa non va? Sono quasi sicuro che quel ciclo each sia terminato, anche perchè lo faccio scorrere tra tutti i td di quella tabella e quindi a una certa comunque finiscono.

    Grazie

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131

    Re: Prestazioni animazioni jquery diminuite, come mai?

    Originariamente inviato da amamax
    Ciao ragazzi,

    ho realizzato un menu laterale che se cliccato aumenta di dimensione in larghezza. Per questo uso un animate() che aumenta appunto il width.

    A livello fluidità d'animazione va alla grande, fintanto che però nel content del sito web non faccio delle importanti operazioni di each() per ogni cella di una tabella molto molto grande.

    Infatti dopo averle effettuate (e quindi terminate) la fluidità di quel div che si allarga di cui parlavo all'inizio, cala enormemente, tanto da aprirsi con salti di frame molto evidenti.

    Sembra quasi che il browser abbia usato molta memoria ed ora non riesce più a darne a quel div laterale o comunque in generale a tutta l'applicazione.
    probabile, verificalo in window puoi verificare la cpu
    Sapete dirmi cosa non va? Sono quasi sicuro che quel ciclo each sia terminato, anche perchè lo faccio scorrere tra tutti i td di quella tabella e quindi a una certa comunque finiscono.

    Grazie
    senza codice è praticamente impossibile, se molto complesso metti un link alla pagina pubblica
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di amamax
    Registrato dal
    Feb 2001
    Messaggi
    562
    Ciao Andrea. Purtroppo non è un'applicazione pubblica ma una web app che gira solamente in rete lan.

    Cmq per dare qualche dettaglio, il backend genera una tabella molto molto molto grande.
    Se apro questo menu laterale senza fare alcun each() su ogni td di questa tabella, si nota comunque un leggero calo di prestazioni della fluidità del div allargato dall'animate();

    Ma se percaso appunto faccio questi calcoli con l'each() su ogni td, e li faccio fare anche in modo $(document).ready(), nonostante li ha finiti, questa barra laterale si apre e si chiude con una lentezza esorbitante, in particolare su Firefox e un po' meno in Chrome.

    Ora volevo capire se c'era modo di fargli recuperare questa memoria, che ne so, magari con qualche metodo distruggendo quella memoria che si è occupata o roba simile.

    grazie

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    mi sembra che each necessiti di molta risorse come i cicli for valuta se puoi ovviare con altro, oppure spezza il ciclo primo each da 1 a 100 se si vogliono altri dati con un tasto fai una chiamata ajax (un po come la ricerca di google con le immagini)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it L'avatar di amamax
    Registrato dal
    Feb 2001
    Messaggi
    562
    Originariamente inviato da cavicchiandrea
    mi sembra che each necessiti di molta risorse come i cicli for valuta se puoi ovviare con altro, oppure spezza il ciclo primo each da 1 a 100 se si vogliono altri dati con un tasto fai una chiamata ajax (un po come la ricerca di google con le immagini)
    Ciao, quello che non capisco è perchè, nonostante il ciclo è terminato, il browser DOPO rallenti. In teoria non dovrebbe riprendere la sua normale velocità di renderizzazione o quel che è?

    Per risponderti in realtà io il ciclo lo devo fare su tutte le celle per forza, ovviamente su una tabella che ha un paginatore e quindi non vengono mostrati subito tutti i dati. Ma siccome comunque la tabella resta molto grande (circa 30 colonne), allora mi tocca far così.

    Però sta cosa la devo risolvere, non è possibile che non si possa recuperare velocità.

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Mi fermo così è solo una perdita di tempo, ti auguro di risolvere
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Utente di HTML.it L'avatar di amamax
    Registrato dal
    Feb 2001
    Messaggi
    562
    Originariamente inviato da cavicchiandrea
    Mi fermo così è solo una perdita di tempo, ti auguro di risolvere
    Grazie per la disponibilità e per la franchezza...


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.