图像高度使用.load返回0

时间:2015-06-25 07:38:55

标签: jquery height

$(".sl3-big-image").on('load', function() {
      alturaImg3 = $('.sl3-big-image').height();
      $('.sl3-container').css('height',alturaImg3);
      $('.sl3-container .sl2-container2').css('height',alturaImg3);
    });

我认为.on('load',...)根本不起作用。有时候img身高是0.我试过这个,但它也没有用。

$(".sl3-big-image").on('load', function() {
          alturaImg3 = $('.sl3-big-image').height();
          $('.sl3-container').css('height',alturaImg3);
          $('.sl3-container .sl2-container2').css('height',alturaImg3);
        }).each(function() {
          if(this.complete) $(this).load();
        });

可能是什么问题?感谢

2 个答案:

答案 0 :(得分:1)

在window.load函数中调用你的函数。

$(window).load(function(e){
  $(".sl3-big-image").on('load', function() {
          alturaImg3 = $(this).height();
          $('.sl3-container').css('height',alturaImg3);
          $('.sl3-container .sl2-container2').css('height',alturaImg3);
        }).each(function() {
          if(this.complete) $(this).load();
  });
});

答案 1 :(得分:0)

使用height的{​​{1}}属性可以正常工作。

this
$image = $('img');

$image.on('load', function () {
  console.log(this.height);
})