在WordPress中编写jQuery函数的正确方法

时间:2015-04-20 作者:Dean Elliott

我正在使用基于AJAX的Wordpress模板(自定义),但在让jQuery正常运行时遇到了一些问题。

我已经把所有的东西(按正确的顺序)排好了队,在某种程度上它确实起了作用,但我发现自己不得不写jQuery(\'... 与速记相反$(... 每次我想添加新的脚本片段时。我做错什么了吗?请参阅下面我的(精简)自定义JS文件;

function customThemeFunctions(){
    var windowHeight = jQuery(window).height();
    jQuery(\'.full-height\').css({\'height\' : windowHeight - 60});
    jQuery(\'.full-height-min\').css({\'min-height\' : windowHeight - 60});
}

jQuery( document ).ready(function($){
    customThemeFunctions();
});

jQuery( document ).ajaxSuccess(function($){
    customThemeFunctions();
});

1 个回复
SO网友:cjbj

正如注释中所建议的,这种错误是由WordPress在noconflict mode. 最常见的解决方法是将所有函数包装到脚本文件中:

jQuery(document).ready(function($) {  ... scripts ... }
另一个风险更大的选项是通过以下方式启动脚本文件来关闭noconflict模式:

$ = jQuery.noConflict();

结束