我在加载wordpress webiste时遇到此错误。它停止了革命slider.i的工作使用wordpress的total_child主题。任何帮助。?
jQuery(document).ready(function() {
// CUSTOM AJAX CONTENT LOADING FUNCTION
var ajaxRevslider = function(obj) {
// obj.type : Post Type
// obj.id : ID of Content to Load
// obj.aspectratio : The Aspect Ratio of the Container / Media
// obj.selector : The Container Selector where the Content of Ajax will be injected. It is done via the Essential Grid on Return of Content
var content = "";
data = {};
data.action = 'revslider_ajax_call_front';
data.client_action = 'get_slider_html';
data.token = 'ef60422c21';
data.type = obj.type;
data.id = obj.id;
data.aspectratio = obj.aspectratio;
// SYNC AJAX REQUEST
jQuery.ajax({
type:"post",
url:"http://christiansteven.com/en/wp-admin/admin-ajax.php",
dataType: 'json',
data:data,
async:false,
success: function(ret, textStatus, XMLHttpRequest) {
if(ret.success == true)
content = ret.data;
},
error: function(e) {
console.log(e);
}
});
// FIRST RETURN THE CONTENT WHEN IT IS LOADED !!
return content;
};
答案 0 :(得分:1)
在页面的第47行,您正在加载jQuery并指定defer
属性:
<script type='text/javascript' src='http://christiansteven.com/en/wp-includes/js/jquery/jquery-migrate.min.js' defer='defer'></script>
defer属性是一个布尔属性。如果存在,它指定在页面完成解析时执行脚本。
你的代码稍微向下,你有这个:
<script type='text/javascript'>try{jQuery.noConflict();}catch(e){};</script>
当解析这一行JS时,jQuery不存在,正如您之前指定的那样defer
如果您删除了defer
,您会看到滑块为您提供了一条不同的错误消息,您可以(据称)通过WP中的插件设置解决该问题。
答案 1 :(得分:0)
WordPress已经包含了jQuery的副本。将jQuery脚本排入队列(使用WordPress入队脚本函数)将使其可用于您的代码。
wp_enqueue_script("jquery");
此外,要将需要jQuery的其他脚本排入队列,您可以使用相同的语法指定&#34; jquery&#34;在所需脚本数组中:
wp_enqueue_script('myScriptName', '/pathToScript/myScriptFile.js', array('jquery'), '1.0.0', true);
Here是wp_enqueue_script函数引用。