.ready尚未承认AJAX内容

时间:2011-11-11 10:33:23

标签: javascript jquery ajax

我正在通过此ajax调用加载内容,主要是图像,并且只有在所有图像都完全加载时才想淡入div。出于这个原因,我认为我应该使用.ready,以便在我使用jquery淡入它之前加载所有内容,但由于某种原因,当div淡入时图像没有完全加载,这使得它好像它没有等待一切加载。

我基本上想要为这个AJAX内容构建预加载

function getPage() {
    var data = 'page=' + encodeURIComponent(document.location.hash);

    $.ajax({
        url: "loader.php",  
        type: "GET",        
        data: data,     
        cache: true,
        success: function (html) {  


            $('#content').html(html);
            $("#slider").easySlider();  

            $(this).ready(function() {

                 $('#body').fadeIn('slow');
                 $('#loader').fadeOut('slow');

             });




        }       
    });

提前感谢您的帮助。我还是个初学者。

示例:

1 个答案:

答案 0 :(得分:0)

编辑: 哦,现在我看到你的问题了!

当触发success()函数时,你必须在.content内的图像中添加.load事件!

你必须做这样的事情

function getPage() {
    var data = 'page=' + encodeURIComponent(document.location.hash);
    $('#loader').fadeIn('slow');
    $.ajax({
        url: "loader.php",  
        type: "GET",        
        data: data,     
        cache: true,
        success: function (html) {  

            $('#content').html(html);
            $("#slider").easySlider();  
            $('#content img').load(function(){
                 $('#body').fadeIn('slow');
                 $('#loader').fadeOut('slow');
            });
        }       
    });
}