无法获得使用jQuery更改的图像宽度

我有一个页面显示多个图像中的单个图像。我将所有图像存储在json对象(光电探测器)中,因此我使用以下功能来回导航:

function setPhoto(index) {
  var photo = photoarr[index];
  $('#photoId').text(photo.id);
  $('#photo').attr({ 'src': photo.url, 'alt': photo.title });
  $('#photoTitle').text(photo.title);
  $('#photoWidth').text(photo.width);
  $('#photoHeight').text(photo.height);
  $('#photoTitle').width($('#photo').width());
}

我的挑战是,当我到达最后一行尝试设置#photoTitle宽度以匹配#photo宽度时,其$('#photo').width()值为0(零)。

好像我需要“刷新”为实际获得新图像宽度而进行的DOM更改一样。

如果以上任何一项有意义,请让我知道该怎么做...

提前致谢

萨帕尔

您可以尝试类似

function setPhoto(index) {
  var photo = photoarr[index];

  var img = new Image();
  img.src = photo.url;
  img.onload = function(){

    $('#photoId').text(photo.id);
    $('#photo').attr({ 'src': this.src, 'alt': photo.title });
    $('#photoTitle').text(photo.title);
    $('#photoWidth').text(this.width);
    $('#photoHeight').text(this.height);
    $('#photoTitle').width(this.width);

  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章