我在jQuery .load()
中遇到了这个问题:
我有一个名为a.php的测试页面,其中有:
sleep(5);
这样睡了5秒钟。在我的jQuery中,如果该页面已经开始加载并且您单击另一个链接,它会加载该页面,然后在加载上一页面后不久。
有没有办法阻止这个?
代码如下:
jQuery(document).ready(function(){
$("#load").hide(); //Hife the loading bar
$("a").click(function(){ //On click
if(!$(this).hasClass('ignoreJS'))
{
$("#load").show();
$("#mainContent").hide();
addActive( this );
var FullAttribute = $(this).attr('href');
var FinalAttribute = FullAttribute.slice(1);
$('#mainContent').load( FinalAttribute + '.php', function(response, status, xhr)
{
if(status)
{
if(status == 'error' && xhr.status != 0)
{
$('#mainContent').html('<h2 class="errorText">Error ' + xhr.status + ' </h2>');
}
waitingToLoad = false;
}
$("#mainContent").show();
$("#load").hide();
});
}
});
答案 0 :(得分:0)
试试这个:
$("a").click(function(){ //On click
// <your original code>
// add this at the end of your function
return false;
});
return false
语句会阻止浏览器关注href
代码的a
地址。