jQuery脚本无法在Wordpress中加载($不是函数)

时间:2011-11-13 15:24:43

标签: jquery wordpress

我一直在研究嵌入wordpress的Ian Lunn's interactive map版本。

该脚本在standalone page上完美运行,但在加载到wordpress时,脚本什么都不做。我尝试了各种解决方案 - 以不同的方式加载jQuery(在functions.php中,内联,在页眉和页脚中),降级到jQuery的早期版本,命名函数,命名它。什么都没发生,萤火虫没有出现任何错误,没有任何错

在这个阶段我完全失去了,所提供的任何帮助都将不胜感激。

此处的演示演示:http://www.ianlunn.co.uk/demos/bbc-news-jquery-map/ Github来源:https://github.com/IanLunn/BBC-News-jQuery-Map

//答案后更新

发现美元符号在WordPress中保留为原型库,这就是为什么它错误地出现'$不是函数' - 下面接受的答案指出了这一点,但仅在评论中因此更新为明晰。例如: -

$().ready(function() {
   $("#select_me").show();
});

jQuery().ready(function() {
   jQuery("#select_me").show();
});

3 个答案:

答案 0 :(得分:3)

当我转到您的页面时,我在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标签中的代码,这就是问题所在。它是在Javascript文件中传递给客户端的PHP代码。

答案 1 :(得分:3)

我知道这已经得到了解答,但这就是我学会这样做的方法,即使它基本上是相同的答案,也可以帮助其他人复制/粘贴解决方案。

基本上将所有jQuery包装在这个函数中:

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

    /* Put your jQuery functions here,
       no need to change the $ to jQuery. */


});

答案 2 :(得分:1)

查看您正在加载的脚本文件:

http://mjw.view-wireframes.com/jquery-map/map.js

Wordpress正在吐出一个PHP文件,而不是.js文件。即它似乎是WP服务方式的问题,或者你包含了Javascript文件。