Comment reporter le Javascript en ligne?

J'ai le code html suivant:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/blazy/1.8.2/blazy.min.js" defer></script>
    <script src="https://code.jquery.com/jquery-2.1.4.min.js" integrity="sha256-8WqyJLuWKRBVhxXIL1jBDD7SDxU936oZkCnxQbWwJVw=" crossorigin="anonymous" defer></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.9.0/js/lightbox.min.js" defer></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous" defer></script>
    <!-- 26 dec flexslider js -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/flexslider/2.6.3/jquery.flexslider.min.js" defer></script>
    <script defer>
    (function($) {
        $(document).ready(function() {
            //do something with b-lazy plugin, lightbox plugin and then with flexslider
        });
    })(jQuery);
    </script>
</head>
<body>
</body>
</html>

J'obtiens une erreur, en disant: jQuery n'est pas défini. Maintenant, même si je supprimer reporter à partir de mon code JS inline, il dit que jQuery n'est pas défini. Pour une raison que j'ai garder les plugins jQuery dans la tête et garder mon code JS inline. Ma question est:

  1. Pourquoi ne pas le Javascript en ligne du code reportés lorsque defer attribut est présent sur elle?
  2. Est-il un moyen d'imiter le reporter le problème sur mon inline code Javascript? Je peux mettre qu'à la fin de la balise body, si nécessaire.
déplacez votre inline code javascript dans un fichier externe et reporte alors 🙂
Aussi, vous pouvez par programmation inline votre javascript externe si vous ne voulez pas l'utiliser html5
Je ne peux pas le mettre dans un fichier externe pour une raison quelconque. Il est généré par php et je ne sais pas à propos de php donc je ne peux pas changer ce code.
Vous avez de ne pas reporter votre bibliothèque jQuery.. il n'a pas à être dans l'en-tête du document tho -- vous pouvez le déplacer à la fin du corps, tant que ça vient avant le script inline et n'est pas reporté il va bien.
Eh bien obtenir quelques qui sait à propos de php (si possible celui qui a écrit le code que vous utilisez). Ou il suffit de déposer la defer partout.

OriginalL'auteur user31782 | 2016-12-30