Je voudrais injecter jQuery dans une page en utilisant l'API Google AJAX bibliothèques, je suis venu avec la solution suivante:Injecter jQuery dans une page échoue lorsque vous utilisez l'API Google AJAX bibliothèques
http://my-domain.com/inject-jquery.js:
;((function(){
// Call this function once jQuery is available
var func = function() {
jQuery("body").prepend('<div>jQuery Rocks!</div>');
};
// Detect if page is already using jQuery
if (!window.jQuery) {
var done = false;
var head = document.getElementsByTagName('head')[0];
var script = document.createElement("script");
script.src = "http://www.google.com/jsapi";
script.onload = script.onreadystatechange = function(){
// Once Google AJAX Libraries API is loaded ...
if (!done && (!this.readyState || this.readyState == "loaded" || this.readyState == "complete")) {
done = true;
// ... load jQuery ...
window.google.load("jquery", "1", {callback:function(){
jQuery.noConflict();
// ... jQuery available, fire function.
func();
}});
// Prevent IE memory leaking
script.onload = script.onreadystatechange = null;
head.removeChild(script);
}
}
// Load Google AJAX Libraries API
head.appendChild(script);
// Page already using jQuery, fire function
} else {
func();
}
})());
serait alors le script inclus dans une page sur un domaine distinct:
http://some-other-domain.com/page.html:
<html>
<head>
<title>This is my page</title>
</head>
<body>
<h1>This is my page.</h1>
<script src="http://my-domain.com/inject-jquery.js"></script>
</body>
</html>
Dans Firefox 3, je suis l'erreur suivante:
Module: 'jquery' must be loaded before DOM onLoad! jsapi (line 16)
L'erreur semble être spécifique à l'API Google AJAX bibliothèques, comme je l'ai vu d'autres utilisent un bookmarklet jQuery pour injecter dans jQuery la page actuelle. Ma question:
- Existe-t-il une méthode pour injecter l'API/jQuery des bibliothèques AJAX de Google dans une page quel que soit l'état onload/onready?
méthode beaucoup plus directe, savez-vous s'il y a une URL statique sur les serveurs de Google que points à la dernière jQuery? –
http://code.google.com/apis/ajaxlibs/documentation/ a les urls pour jQuery – artlung
http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min .js pour obtenir la dernière version de la version actuelle –