激活wordpress插件会破坏jquery效果

时间:2013-05-09 04:22:01

标签: javascript wordpress wordpress-plugin jquery

我目前正致力于将名为Rekreato的HTML5模板转换为wordpress主题。我设法建立了一个简单的主题,但每当我使用jQuery脚本激活任何插件时,我的一些jQuery效果都会被破坏。具体来说,在Firefox调试器中,我得到了 -

  

TypeError:jQuery.easing [jQuery.easing.def]不是函数@   jquery.easing.1.3.js:46

这是page in question。你可以看到大约一半的图像滑块是不起作用的。我留下了一个活动插件,名为WP eMember。

我尝试了很多东西,例如将我的主题配置为子主题,在文档就绪函数中包装jquery.easing.1.3,以及在代码中移动脚本调用,但无济于事。我甚至不确定缓动脚本是否有问题。答案可能是盯着我看,但我似乎无法弄明白。非常感谢提前。

编辑:markratledge的优秀建议。我把脚本放在functions.php中,带有wp_register_script()和wp_enqueue_script()。起初我很困惑,更多的事情被打破了。进一步阅读,我看到由于Wordpress在其内置的jQuery库中使用了noConflict包装,因此$快捷方式不可用。因此,我浏览了所有在检查器中显示错误的脚本,并将'$'与'jQuery'交换。瞧!一切都在j ..再次感谢!

1 个答案:

答案 0 :(得分:1)

查看Function Reference/wp enqueue script « WordPress Codex如何在WordPress主题中加载JS并避免jQuery错误,并显示示例。

你正在通过直接链接加载一堆jQuery,但随后wp_head进来并为插件加载更多jQuery,并发生冲突。即,两个不同的主要jQuery库;检查Firefox控制台以获取正在加载的所有JS的列表。

从该文件:

  

wp_enqueue_script根据时间将脚本文件链接到生成的页面   脚本依赖项,如果脚本尚未存在   包括,如果已注册所有依赖项。你可以   将脚本链接到先前使用   wp_register_script()函数,或者提供所有的这个函数   链接脚本所需的参数。

     

这是将JavaScript链接到WordPress的推荐方法   生成的页面。