2010-03-29 4 views
2

Voici comment je charge jQuery:document jquery prêt avec Google

<script src="http://www.google.com/jsapi"></script> 
<script type="text/javascript"> 
function OnLoad() { 
    insert jQuery goodness here 
}; 
google.load("jquery", "1"); 
google.setOnLoadCallback(OnLoad); 
</script> 

Mais au lieu de la fonction OnLoad() {, je voudrais utiliser

$(document).ready(function() {} 

pour que ce soit comme chaque exemple dans chaque extrait de livre et de documentation.

Comment puis-je définir: $ = jQuery?

Répondre

2

Vous devriez pas besoin de faire quoi que ce soit d'extraordinaire. C'est ce que nous utilisons et il fonctionne:

<script src="http://www.google.com/jsapi?key=snip" type="text/javascript"></script> 
<script type="text/javascript"> 
    google.load("jquery", "1"); 
    google.load("jqueryui", "1"); 
</script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     //goodness 
    }); 
</script> 

Notez que le bloc de script jQuery vient après google.load()

+0

C'est intéressant. Qu'est-ce que? Key = (je suppose que vous avez coupé votre clé unique). Je ne savais pas que Google avait une clé pour jQuery. –

+1

Ils ne le font pas, mais nous chargeons d'autres choses qui nécessitent une clé jsapi. –

1

Avez-vous essayé d'utiliser jQuery après l'avoir chargé?

<script type="text/javascript" src="http://www.google.com/jsapi"></script> 
<script type="text/javascript">google.load("jquery", "1.4.2");</script> 
<script type="text/javascript"> 
    $(function(){ alert("!"); }); // same as $(document).ready(function(){}); 
</script> 

Vous semblez être obligé d'utiliser l'un des jQuery versions listed here.

7

Pourquoi ne pas simplement supprimer le bit loady google et faire cela, comme nous cool kids excentrique:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript"> 
$(document).ready(function() { 
    alert("look ma I'm normal"); 
}); 
</script> 
+0

Merci karim. Pourquoi la documentation de Google ne se réfère-t-elle pas à la façon dont tous les enfants cool le font? http://code.google.com/apis/ajaxlibs/documentation/#jquery –

+5

Je ne sais pas. Ce qui m'a toujours dérangé, c'est qu'ils n'élaborent pas vraiment sur la ligne "L'approche google.load() offre le plus de fonctionnalités et de performances." Donc, je suis censé prendre pour acquis que l'utilisation de 'google.load' sera * meilleure *, et ne pas trouver dans mon réfrigérateur et modifier la structure de l'ADN de tous mes aliments. – karim79

+0

+1 pour ne pas modifier notre structure de l'ADN! ;-) –

0

Adminting setOnLoadCallback exécutera la fonction OnLoad pourquoi ne pas le faire:

<script src="http://www.google.com/jsapi"></script> 
<script type="text/javascript"> 
function OnLoad() { 
    insert jQuery goodness here 
}; 
google.load("jquery", "1"); 

var OnLoad = $(document).ready(function() {}; 

google.setOnLoadCallback(OnLoad); 
</script> 
1

Comme toutes les bonnes réponses ici, mais personne n'a vérifié !? % -), je viens de poster un exercice jquery + google apis!

vous pouvez parfois trouver utile!;-)

Google Map - Current location

MISE À JOUR:

ok, juste pour rendre les choses claires,

rien avec setOnLoadCallback spécial; il est juste une façon Google de faire:

corps en ligne + js

<body onload="callback()"> 

OU js clasic

window.onload = callback; 

OU

window.onload = function(){ callback(); }; 

OU jquery onload

$(window).bind("load", function(){}); 

OU

$(window).load(function() { /*do something onload */}); 

OU jquery DOM prêt

$(document).ready(function(){ /*do something on dom ready */ }); 

OU

$(function() { /*do something on dom ready */}); 

Tous ces travaux fonctionnent de la même manière que Google Load OU mieux Google Load charge la même chose pour tous theese! ;-)

NOTE: comme dit Matthew Flaschen, la méthode Load est pas le même de Ready au sens de la première peut être utilisée pour les éléments d'accès après page entière est chargée (images et d'autres objets que vous avez attachés dans la page), le second peut être utilisé pour accéder aux éléments après que le DOM soit prêt! espérons maintenant tout est clair! Doh! Donc, les deux méthodes ne sont pas les mêmes, mais dans certaines circonstances, vous pouvez l'utiliser pour faire des choses similaires!

+0

Je ne comprends pas votre commentaire.Vous pensez trop loin au-dessus de moi, je suppose. J'essaie juste de faire fonctionner la syntaxe comme chaque exemple que j'ai lu dans chaque livre et chaque site Web. –

+0

pas de problème mon ami! ;-) c'est pas mal de penser à toi! c'est juste une méditation à propos, pourquoi je dois inclure un ** google load **, si je peux simplement utiliser le classique, ne jamais mourir, script de manière à relier! à propos de votre ** essayant d'obtenir la syntaxe ** pls, lisez la mise à jour! ;-) –

+1

C'est faux. 'ready' n'est pas la même chose que onload. Voir http://api.jquery.com/ready/. –

Questions connexes