p_initJQuery();
function p_initJQuery() {
if (typeof jQuery === "undefined") {
var script_tag = document.createElement('script');
script_tag.setAttribute("type", "text/javascript");
script_tag.setAttribute("src", "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js")
script_tag.onload = punctis_load_box;
script_tag.onreadystatechange = function() {
if (this.readyState == 'complete' || this.readyState == 'loaded') punctis_load_box();
}
document.getElementsByTagName("head")[0].appendChild(script_tag);
} else {
punctis_load_box();
}
}
function punctis_load_box() {
$(".punctis-social-box").html(typeof jQuery);
}
这就是如何控制网站还没有加载jquery,因为这个代码是插在我不知道的页面上,如果没有加载,它会加载它。这在我的test site上运行正常,但是如果我在另一个complex one上尝试它,它会因 Uncaught TypeError而失败:对象[对象窗口]的属性'$'不是函数
我不清楚最新情况。
答案 0 :(得分:1)
如果以前没有定义过jQuery,你的代码会加载jQuery,但你的站点已经有了jQuery。
(我认为它包含在你的wordpress主题中)
因此您可以使用jQuery
对象。如果你不能使用$
,那是因为jQuery处于'无冲突模式'。
http://api.jquery.com/jQuery.noConflict/
只需使用jQuery
代替$
或$
重新定义window.$ = jQuery.noConflict();