Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    84

    caricamento asincrono librerie

    Ciao a tutti.

    Nell'head del mio sito sono caricate queste tre librerie:

    respond.min.js
    modernizr-2.0.6.min.js
    jquery.min.js

    Facendo un'analisi della pagina con pagespeed mi viene consigliato di caricare in modo asincrono queste tre librerie.

    Se metto "async" nel codice succede che per esempio il menù non funziona.

    C'è la possibilità di caricarle in modo asincrono in altro modo facendogli svolgere nel modo corretto le loro funzioni?

    Grazie

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Intanto mettile nell'ordine giusto, poi dai un'occhiata qui: http://www.growingwiththeweb.com/201...ttributes.html
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    84
    Ciao br1

    grazie per la risposta.

    Ho provato ad utilizzare l'attributo "defer" ma dà lo stesso problema.


    codice:
    <script type="text/javascript"  src="http://www.miosito.it/js/respond.min.js" defer></script>

    Sbaglio qualche cosa?

    E poi cosa intendi quando dici "mettili nell'ordine corretto"?

    Grazie di nuovo

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    La prima ad essere caricata deve essere la jquery.min.js , quindi nel codice sara' la prima e senza alcun attributo.
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    84
    Grazie di nuovo.

    Quindi la jquery.min.js senza nessun attributo, mentre per le altre due l'attributo defer?

    Quindi in questo modo?


    codice:
    <script type="text/javascript"  src="http://www.sito.it/js/jquery.min.js" ></script>
    <script type="text/javascript"  src="http://www.sito.it/js/respond.min.js" defer></script>
    <script type="text/javascript"  src="http://www.sito.it/js/modernizr-2.0.6.min.js" defer></script>

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    84
    Quote Originariamente inviata da br1 Visualizza il messaggio
    La prima ad essere caricata deve essere la jquery.min.js , quindi nel codice sara' la prima e senza alcun attributo.
    Ciao e grazie per la risposta.

    Muovendo jquery.min.js prima degli altri javascript ho risolto molti dei problemi che avevo. Me ne è rimasto uno.

    Se allo script
    jquery.min.js lascio l'attributo "defer" succede che lo script "toubletaptogo" non funziona. Questo script comanda il tap su tablet. Nel caso di un menù a tendina questo script permette con il primo tap di aprire la tendina, mentre con il secondo tap di cliccare il link interessato.

    Questo script continua a non funzionare. Vi lascio il codice dello script nella speranza che qualcuno possa aiutarmi.

    codice:
    
    
    codice:
    <script>
    $( function()
    {
    $( '#navigazione li:has(ul)' ).doubleTapToGo();
    });
    </script>


    e poi c'è un link che richiama questo script:


    codice:
    
    
    codice:
    ;(function($,window,document,undefined)
    {$.fn.doubleTapToGo=function(params)
    {if(!('ontouchstart'in window)&&!navigator.msMaxTouchPoints&&!navigator.userAgent.toLowerCase().match(/windows phone os 7/i))return false;this.each(function()
    {var curItem=false;$(this).on('click',function(e)
    {var item=$(this);if(item[0]!=curItem[0])
    {e.preventDefault();curItem=item;}});$(document).on('click touchstart MSPointerDown',function(e)
    {var resetItem=true,parents=$(e.target).parents();for(var i=0;i<parents.length;i++)
    if(parents[i]==curItem[0])
    resetItem=false;if(resetItem)
    curItem=false;});});return this;};})(jQuery,window,document);
    
    


    C'è possibilità di fare funzionare questo script pur mantenendo l'attributo defer alla libreria
    jquery.min.js?

    Spero di avere utilizzato i termini corretti.....


  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non puoi mettere in moto la macchina senza prima aver caricato il motore.
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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.