jQuery脚本无法加载到Wordpress($不是函数)
我一直在开发一个嵌入wordpress的版本 该脚本可以在上完美地工作,但是当加载到wordpress时,脚本什么也不做。我尝试过各种解决方案——以不同的方式加载jQuery(在functions.php中,内联,在页眉和页脚中),降级到jQuery的早期版本,命名函数的名称空间,等等。什么都没有发生,firebug没有显示错误,什么都没有 我在这个阶段完全不知所措,任何提供的帮助都将不胜感激 在此进行工作演示: Github来源: //回答后更新 据了解,WordPress中为原型库保留了美元符号,这就是为什么它会错误地显示为“$不是一个函数”-下面的公认答案指出了这一点,但仅在注释中指出了这一点,因此为了清楚起见,进行了更新。例如:-jQuery脚本无法加载到Wordpress($不是函数),jquery,wordpress,Jquery,Wordpress,我一直在开发一个嵌入wordpress的版本 该脚本可以在上完美地工作,但是当加载到wordpress时,脚本什么也不做。我尝试过各种解决方案——以不同的方式加载jQuery(在functions.php中,内联,在页眉和页脚中),降级到jQuery的早期版本,命名函数的名称空间,等等。什么都没有发生,firebug没有显示错误,什么都没有 我在这个阶段完全不知所措,任何提供的帮助都将不胜感激 在此进行工作演示: Github来源: //回答后更新 据了解,WordPress中为原型库保留了美元
$().ready(function() {
$("#select_me").show();
});
jQuery().ready(function() {
jQuery("#select_me").show();
});
当我转到您的页面时,我在Firebug控制台中看到两个错误 首先是:
XML can't be the whole program.
?> map.js?ver3.2.1 (line 55)
二是:
document.getElementById("recaptcha-submit-btn-area") is null
/about/...ve-map/ (line 595)
然后我明白了:
carouFredSel: No element selected.
jquery...r=1.4.2 (line 14)
你没有看到这个输出吗
编辑:您的map.js的代码包装在PHP标记中,这就是问题所在。PHP代码以Javascript文件的形式发送到客户端。当我转到您的页面时,我在Firebug控制台中看到两个错误 首先是:
XML can't be the whole program.
?> map.js?ver3.2.1 (line 55)
二是:
document.getElementById("recaptcha-submit-btn-area") is null
/about/...ve-map/ (line 595)
然后我明白了:
carouFredSel: No element selected.
jquery...r=1.4.2 (line 14)
你没有看到这个输出吗
编辑:您的map.js的代码包装在PHP标记中,这就是问题所在。PHP代码以Javascript文件的形式发送到客户端。查看正在加载的脚本文件:
Wordpress正在抛出一个PHP文件,而不是.js文件。也就是说,WP提供服务的方式或您包含Javascript文件的方式似乎存在问题。查看您正在加载的脚本文件:
Wordpress正在抛出一个PHP文件,而不是.js文件。也就是说,这似乎是WP提供服务的方式或您包含Javascript文件的方式中的一个问题。我知道这一点已经得到了回答,但这就是我学习如何做到这一点的方式,即使这基本上是相同的答案,也可能有助于其他人复制/粘贴解决方案 基本上,将所有jQuery包装在此函数中:
jQuery(document).ready(function($) {
/* Put your jQuery functions here,
no need to change the $ to jQuery. */
});
我知道这个问题已经得到了回答,但这就是我学习如何做到这一点的方法,尽管这基本上是相同的答案,但它可能有助于其他人复制/粘贴解决方案 基本上,将所有jQuery包装在此函数中:
jQuery(document).ready(function($) {
/* Put your jQuery functions here,
no need to change the $ to jQuery. */
});
我刚刚尝试将bbc的map.js文件中的代码放入您的页面,方法是在Firebug控制台中运行它(我必须将它包装在引用jQuery为$的闭包中,因为您的页面已将其他内容分配给$)。然后它工作了一半…地图没有动画,但当我悬停在地图的某个区域上时,我会看到列表中的正确项高亮显示。一旦我纠正了使用functions.php重写map.js文件的问题,wordpress显然会保留$-感谢您的帮助!我刚刚尝试将bbc的map.js文件中的代码放入您的页面,方法是在Firebug控制台中运行它(我必须将它包装在引用jQuery为$的闭包中,因为您的页面已将其他内容分配给$)。然后它工作了一半…地图没有动画,但当我悬停在地图的某个区域上时,我会看到列表中的正确项高亮显示。一旦我纠正了使用functions.php重写map.js文件的问题,wordpress显然会保留$-感谢您的帮助!仅供进一步参考:在wordpress中,jQuery库加载到。这就是为什么jQuery函数需要追加
jQuery()
,而不是$()
。在这样的函数中,$()
再次工作。例如,在您的示例中,$(“#选择我”).show()只要最外层的包装器以jQuery()
开头,code>仍然有效。仅供进一步说明:在wordpress中,jQuery库加载到。这就是为什么jQuery函数需要追加jQuery()
,而不是$()
。在这样的函数中,$()
再次工作。例如,在您的示例中,$(“#选择我”).show()只要最外层的包装以jQuery()
开头,code>仍然有效。