我似乎遇到的另一个问题是Jquery再次出现。我基本上是通过使用.load函数从外部php页面加载内容。这很好,我唯一的问题是负载只是忽进忽出,所以看起来不太好。
有没有办法让加载程序显示更长的时间,或者至少显示一小段时间?
这是我目前拥有的代码:
$('#content').load('contact.php');
$('#test a').click(function() {
var page = $(this).attr('href');
$("#mydiv").html('<div class="bar"><span></span></div>');
$('#content').load(''+ page +'.php', null, function() {
$("#mydiv").html('');
});
return false;
});
任何帮助或指导都将是伟大的:)
以下操作无效:
<script type="text/javascript">
$(document).ready(function() {
setTimeout(function () {
$('#content').load('contact.php');
$('#test a').click(function() {
var page = $(this).attr('href');
$("#mydiv").html('<div class="bar"><span></span></div>');
$('#content').load(''+ page +'.php', null, function() {
$("#mydiv").html('');
});
return false;
});
}, 2000);
});
</script>
<script>
setTimeout(function () {
//Do it here
}, 2000);
</script>
不过我不会让用户等待一分钟。将2000修改为任意时间。
祝你好运。
当加载程序完成加载并显示内容时,可以调用setTimeout
来隐藏加载程序:
setTimeout(hideLoaderShowContent, 1000); //
function hideLoaderShowContent() {
$("#loader").hide();
$("#content").show();
}
编辑:这就是您所需要的:
var $mydiv = $("#mydiv");
$mydiv.html('<div class="bar"><span></span></div>');
$('#content').load(''+ page +'.php', null, function() {
setTimeout(function() { $mydiv.html(''); }, 1000); // Note the setTimeout here waits 1 second (1000 ms)
});