jqueryajax挂起IE11
这个ajax调用使IE11和css动画冻结。Mozilla和Chrome都很好。不仅这一个是有问题的,我把它作为一个例子。以下是我迄今为止尝试过的几种变通方法: -已禁用缓存。我从服务器上禁用了它 -我试过这个把戏 -删除了嵌套函数。只有.html()方法不能单独工作jqueryajax挂起IE11,jquery,ajax,internet-explorer-11,Jquery,Ajax,Internet Explorer 11,这个ajax调用使IE11和css动画冻结。Mozilla和Chrome都很好。不仅这一个是有问题的,我把它作为一个例子。以下是我迄今为止尝试过的几种变通方法: -已禁用缓存。我从服务器上禁用了它 -我试过这个把戏 -删除了嵌套函数。只有.html()方法不能单独工作 $.ajax({type: 'POST', url: "accordion.php?cat="+aid, async: true, success: function (html)
$.ajax({type: 'POST',
url: "accordion.php?cat="+aid,
async: true,
success: function (html) {
$("#accordion").animate({ right: "140%"},500, function () {
$(this).css("right","-25%", $(this).hide(1, function() {
$(this).html(html).show(1, function() {
$(this).animate({right: "100%"},1000),$ajaxloading.fadeOut("slow")})}));});}})
我发现了问题。问题是IE的活动内容过滤功能。My php包含链接到.js文件的脚本资源。在编写php的过程中,当涉及到这些行时,IE会挂起。这是一个Jquery手风琴,需要几个js来操作。我删除了脚本标签,工作正常。我想我会把这些标签移到主页上,即使不需要它们,它们也会被加载并一直运行;这不是我的第一个偏好。如果你把
success
function中的函数放在AJAX之外(使用静态html
string),它们是否会冻结浏览器?实际上这是一个聪明的建议,但不会是相同的。这是一个发送变量的php ajax。这让我好奇它是否在php编写期间挂起。但是,无论如何。。。我将尝试使用其他html字符串并让您知道结果。function myAjax(html){$(“#accordion”).animate({right:“140%”,500,function(){$(this).css(“right”,“-25%”,$(this).hide(1,function(){$(this).html.show(1,function(){$(this).animate({right:“100%”,1000),$load.fadeOut(“slow”)});htm:“DoJo”;myAjax(htm)代码>这项工作非常顺利。我试着用一张大桌子,没有问题。我正在链接accordion.php中的其他一些.js文件。也许是因为IE正在尝试初始化那些脚本。看起来仍然很奇怪。另一个测试用例可能使用精确的action.php
结果作为myAjax()
函数的参数,而无需再次使用AJAX(htm:“action.php输出,自己编写”
)。如果它再次冻结,那就不是关于AJAX,而是ie。是的,长的php代码也会导致挂起。简而言之,js初始化和长php调用导致IE挂起。