Document.ready dans des fichiers externes?

Je suis référencement JavaScript sur une page HTML:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.js"></script>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&amp;region=GB"></script>
<script type="text/javascript" src="js/shared.js"></script>
<script type="text/javascript">
$('document').ready(function() {   
    //In-page code: call some functions in shared.js
});
</script>

Les fonctions définies dans shared.js ne sont pas enveloppés à l'intérieur $('document').ready. Donc:

  1. Il est sûr de supposer que les fonctions définies dans les shared.js sont disponibles pour le code de la page"?
  2. Si je sors le code de la page dans un fichier séparé appelé local.js (garder enveloppé dans $('document').ready), est-il encore raisonnable de supposer que les fonctions définies dans les shared.js sont disponibles?
  3. Enfin, est le fait que je ne suis pas d'emballage shared.js à l'intérieur de $('document').ready un problème? Je suis la recherche que si je ne l'envelopper, ses fonctions ne sont plus disponibles pour le code de la page.

La raison pour la question 3, c'est que je suis frapper ce problème: Uncaught TypeError: Propriété ... ce n'est pas une fonction - une fois que la page est chargée

et vous demandez-vous si c'est quelque chose à voir avec la façon dont j'ai organisé mon code.

Mise à JOUR: Merci pour les réponses. Il est maintenant clair que l'utilisation d' $('document').ready dans shared.js serait de supprimer ces fonctions à partir de portée mondiale. Cependant, je veux juste clarifier la question d'origine au point 3.

Puis-je suppose que si je ne les suivants:

  • à l'intérieur de mon en-page de code, chargé à l'intérieur $('document').readyappeler une fonction d'shared.js
  • ont la fonction dans shared.js reportez-vous à jQuery, Google Maps, ou des éléments sur ma page

il n'y aura pas de problèmes?

En d'autres termes, il est sûr de supposer que la page s'est ouverte par le temps, les fonctions à l'intérieur de shared.js sont appelés, même si je ne suis pas d'emballage tout dans ce fichier à l'intérieur de $('document').ready?

source d'informationauteur Richard