2013-07-16 62 views
-1

我想知道是否可以在显示时加载div的内容,以减少浏览器负载。例如,一个div是隐藏起来的,但是当按下一个按钮时,会触发一个fadeIn()。我可以这样做,以便该div的内容仅在淡入之后才加载?jQuery - 当fadeIn()被触发时,只加载div的内容

这里是我现在的代码:

$(document).ready(function(){ 
    $('.page1').click(function() { 
     $('.page1').fadeOut(250, function() { 
      $('.page2').fadeIn(250) 
     }); 
    }); 
}); 

我想,一旦它看到只加载的.page2内容。

谢谢。 :)

+0

请您尝试显示你的代码,因为它代表,共同提高。 –

+0

@李泰勒 - 对不起,我添加了我的代码。 – jmd

+0

查看'$ .ajax'或其衍生物。 –

回答

1

您可以将淡入

$(document).ready(function(){ 
    $('.page1').click(function() { 
     $('.page1').fadeOut(250, function() { 
      $('.page2').fadeIn(250, function(){ 
       $(".page2").load("/somepage.htm") 
      }) 
     }); 
    }); 
}); 

后看到触发从阿贾克斯负载:http://api.jquery.com/load/

+0

感谢您的回复,但内容不是来自另一页,它只是在div内。我只是希望内容不被加载,直到div可见。在页面中有内容时,我有什么办法可以做到这一点吗? – jmd

+0

'.load()'也需要回调。 http://api.jquery.com/load/。你总是可以使用'iframe',设置它的源代码如$('#iframe')。attr('src','yourpage.php');' – PHPglue

+0

我不知道我跟着你,你是什么意思,不是装?如果你想在淡入淡出后从页面的另一部分插入内容,你可以在fadeIn回调函数中使用$(“。somecontent”)。appendTo(“。page2”)。 – stuisme

0
$(function(){ 
    // Please hide your div inside the content div either in css or js. 
    $('#contentDiv').css('display', 'none'); 

    $('.page1').click(function() { 
     $('.page1').fadeOut(250); 
     $('.page2').fadeIn(250, function(){ 
      $('#contentDiv').css('display', 'block'); 
     }) 
    }); 
}); 
相关问题