.load()动画与外部网页?

时间:2012-05-24 09:13:49

标签: javascript jquery html css

这基本上就是我想做的事情:

我想用我的内容slideUp()一个div。我想.load()在div中的外部网页(在同一台服务器上)和div的.slideDown()。

现在这就是我所拥有的:

$(document).ready(function() {  
   $('a').click(function(){  
   $('.content').slideUp('1000');
   $('.content').hide().load('about.html');
   $(".content").slideDown('1000');
   });  
});

基本上这就是我得到的:div .content隐藏自己,加载about.html页面,然后出现。但没有slideUps或slideDowns。

有人有想法吗?

很抱歉,如果这是一个菜鸟问题,这是我第一次尝试js / jquery。

提前致谢。

4 个答案:

答案 0 :(得分:1)

那是因为那些是异步操作。你必须在回调中继续执行:

$('a').click(function(){  
   $('.content').slideUp('1000', function() {
     this.hide().load('about.html', function() {
       this.slideDown('1000');
     });
   });
});

答案 1 :(得分:0)

尝试:

$('a').click(function(){  
   var el = $('.content'),                      //cache content to avoid multiple calls
       slidetime = 1000;                        
   el.slideUp(slidetime,function(){             //slide up
       el.hide().load('about.html',function(){  //afterwards, load
           el.slideDown(slidetime);             //afterwards, slide
       });
   });
}); 

答案 2 :(得分:0)

您将字符串'1000'传递给slideUp或slideDown。 它应该是数字或字符串,它可以像'慢'......

答案 3 :(得分:0)

试试这个

$(document).ready(function() {  
   $('a').click(function(){  
   $('.content').slideUp(1000);
   $('.content').hide().load('index2.html');
   $(".content").slideDown(1000);
   });  
});

干杯:)