我想在slideUp函数之后加载文件(使用href变量),而不是之前。
我的代码:
$(document).ready(function() {
$("#content").show().load($(".link2:first").attr('href'));
$(".link").click(function() {
var href = $(this).attr('href');
$("#content").slideUp("slow");
$("#content").slideDown("slow").load(href);
return false;
});
});
HTML:
<a href="testar2.html" class="link">Link 1</a>
<a href="testar.html" class="link">Link 2</a>
<div id="content">-</div>
任何想法如何解决这个问题?
答案 0 :(得分:2)
使用此:
$("#content").slideUp("slow", function(){
$(this).load(href, function (responseText, status, req) {
if (status != "error") $(this).slideDown("slow");
});
});
我还添加了一个错误检查,以防.load()
失败。
答案 1 :(得分:1)
将回调用于您的优势
$("#content").load(href, function() {
$(this).stop().slideDown("slow");
});
您可以通过将其放入slideUp回调中来以相同的方式包装加载。就个人而言,我不会等待动画完成,就像我上面那样做,因为这是用户等待内容的更多时间。停止将杀死动画。