1

打开页面时,我需要调整图像大小。在 ajax 导航之前,我用函数jQuery(window)表示我想在进入新页面时调整函数大小。但是现在使用 ajax navigationIi 只需加载我页面的一部分,因此jQuery(window)什么也不返回。

// start page KO PART
jQuery(window).load(function(){ 
    redimensionnement(); 
}); 
// KO PART END

// resize window OK --
jQuery(window).resize(function(){ 
    redimensionnement(); 
});

你有什么想法可以解决我的问题吗?

非常感谢 !

4

3 回答 3

1

在您的 Ajax 请求完成时加载图像,并且在加载图像时调整图像大小。这是示例代码,可以帮助您如何跟踪加载的图像。

// create an image object
 objImage = new Image();

 // set what happens once the image has loaded 
objImage.onLoad=imagesLoaded(objImage);

 // preload the image file
 objImage.src='images/image1n.gif';

 // function invoked on image loaded
 function imagesLoaded(obj)
 {    
    var w = obj.width();
    var h = obj.height();
 }
于 2012-11-23T14:50:52.420 回答
1

我认为您需要将其绑定在 onload 中;

// start page KO PART
jQuery(window).load(function(){ 
    redimensionnement(); 
    // resize window OK --
        jQuery(window).resize(function(){ 
    redimensionnement(); 
    });
}); 
// KO PART END
于 2012-11-23T15:16:19.610 回答
0

我找到了解决方案!

所以,当我们进入我的图像页面时,为了调整我的图像大小,我测试它是否像这样在我的 ajax 循环中加载:

   //ajax loop for full ajax navigation
   $.ajax({
   url: link,
   dataType:'html',
   success: function(data){

        //update of my contain
        var contenu = $(data).find("#contenu");
        $('#contenu').html(contenu).fadeIn('200');


        //TEST OF LOAD IMAGE, if yes, start my resize fonction
        $("#map-carte-1").load(function(){
       redimensionnement();
    });

});
于 2012-11-26T01:16:10.073 回答