我正在客户网站上工作,并且遇到了我的AJAX呼叫无法在网站移动设备上的特定页面上运行的问题。
Page having issues.
页眉和页脚似乎只有在使用手机时才出现问题。不过,在Chrome开发人员工具中看起来还不错。
我无法在浏览器上重现此错误,因此不确定如何诊断该问题。任何建议将不胜感激!您可以转到http://store.arsnet.com/并单击一个类别,然后单击一个特定类别,然后单击一个产品,以转到此页面。
谢谢。如果您需要任何其他信息,请随时询问。
这是特定的AJAX调用:
$.ajax({
url : "/arsweb/DONOTDELETE",
dataType: "html",
success : function (data) {
var html = $.parseHTML(data);
//alert("working");
$("div#search").prependTo($("#centerMainColumnPadding"))
$("#HeaderOnePaddingWrap").html( $(html).find( 'div.skin_width.clearafter:eq(0)' ).html());
$("#HeaderOnePaddingWrap").append('<div style="clear:both"></div>');
//alert($(html).find( 'section#skin_header' ).html())
//alert($("#siteHeadmiddle").html());
$("#siteHeadmiddle").before('<div id="sf_nav"></div>');
$("#sf_nav").html( $(html).find( 'section#skin_header' ).html());
$("span#dnn_arsheader_dnnSEARCH_ClassicSearch").parent().hide();
$("div#search").prependTo($("#searchcontainer"));
$("#arssocialmedia").insertAfter($("#standardMenu"));
$(".menu_box").css({"width":"100%","padding-bottom":"10px"});
$("#siteFootouter").html( $(html).find('footer.footer_bg').html());
$(".bottomRightHeader").prependTo($('.icons_menu'));
$(".wp_newCart").insertAfter($('#userAccountInfo'));
//$("#centercart").appendTo("#skin_topLeft");
$("#arssocialmedia").find("img[alt^='Linked']").attr("src","wp/ars/linkedinicon.png");
$("#arssocialmedia").find("img[alt^='Facebook']").attr("src","wp/ars/facebookicon.png");
$("#arssocialmedia").find("img[alt^='Google']").attr("src","wp/ars/googleplusicon.png");
$(".mobile_nav").find("img[alt^='Menu']").attr("src","wp/ars/btn_menu.png");
$(".site_logo").find("img[alt^='American']").attr("src","wp/ars/arslogo.png");
$(".mobile_nav").click(function(){
$("#standardMenu").slideToggle("fast");
});
checkSize();
$(window).resize(checkSize);
function checkSize(){
if ($("#wp_checkout").css("float") == "none" ){
$("#standardMenu").hide();
$(".menu_box").css("width","100%");
$("#arssocialmedia").wrap('<div id="m_nav_wp"></div>');
$(".mobile_nav").prependTo($("#m_nav_wp"));
$("#m_nav_wp").css("padding-bottom","5px").append("<div style='clear:both;'></div>");
//$("#m_nav_wp").insertBefore("#StandardMenu");
$(".subMenu").find("span").addClass("navhover");
$(".subMenu").find("li").addClass("navhover");
$("td.label").css("color","black;");
$("#m_nav_wp").insertBefore($('.menu_box'))
var numCartItems = ($("#numberOfCartItems").text())
if (numCartItems == 0) {
$("#displayCheckout").css("color","#CCC");
}
$("#searchcontainer").wrap('<div style="clear:both; width:100%; text-align:center;" id="searchcontainer_wrap"></div>');
$("#searchcontainer_wrap").append('<div style="clear:both;"></div>')
//$("#searchcontainer").css("float","none");
//$("#searchcontainer").css("margin","0 auto !important");
}
}
var config = {
sensitivity: 2,
interval:110,
over: HoverOver,
timeout:110,
out: HoverOut
};
var configsub = {
sensitivity: 2,
interval:110,
over: HoverOversub,
timeout:110,
out: HoverOutsub
};
var configsubsub = {
sensitivity: 2,
interval:110,
over: HoverOversubsub,
timeout:110,
out: HoverOutsubsub
};
if ($(window).width() >= 992){
$("#standardMenu .rootMenu > li.haschild").hoverIntent(config);
$("#standardMenu .subMenu li.haschild").hoverIntent(configsub);
$("#standardMenu .subMenu li li.haschild").hoverIntent(configsubsub);
}else if ($(window).width() < 992){
$("#standardMenu .rootMenu > li").each(function(i){
var i = i + 1;
$("#standardMenu li.child-"+i+" .navarrow").click(function(event) {
event.preventDefault();
$("#standardMenu li.child-"+i+" .subMenu").slideToggle(100);
$(this).toggleClass("navarrow2"); return false;
});
});
}
// For Win8 Tablet
$('#standardMenu .haschild li').attr("aria-haspopup","false");
$('#standardMenu .haschild li').attr("role","menu");
$('#standardMenu .haschild').attr("aria-haspopup","true");
$('#standardMenu .haschild').attr("role","menuitem");
},error : function (a,b,c) {
console.log(arguments);
}
});
最佳答案
我能够使用Safari开发人员工具重现该问题。
我发现jQuery中存在语法错误。
这很奇怪,因为我确保未缓存其他浏览器。
因此,我想将Safari添加到有用的开发人员工具列表中。