jquery - 使用 jquery 更改 Src 并获取新高度

标签 jquery image centering

在以这种方式使用 attr 更改 src 后,我尝试将新图像在 div 中垂直居中:

$("#image").attr("src",newsrc);
var height = $("#image").height();
var newmargin = (divsize - height)/2;
$("#image").css=("margin-top",newmargin);

它总是使用前一个图像的高度。这是一个时间问题吗?我是否需要将新高度绑定(bind)到某些东西以防止它过早地获取(以前的图像)高度?

所有图像均在页面加载时预加载...

最佳答案

我是否需要将获取新高度绑定(bind)到某个东西以防止它过早地获取(之前的图像)高度?

有点。 load 事件应该可以工作。

$("#image").attr("src",newsrc);
$('#image').load(
    function() {
        var height = $("#image").height();
        // ...
    }
);

http://api.jquery.com/load-event/

关于jquery - 使用 jquery 更改 Src 并获取新高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3377073/

相关文章:

html - 具有显示 : table-cell 的 CSS 调整大小的 div

jQuery - 图像动画(从右到左)

javascript - 使用 Javascript 框架重构巨大的表单

javascript - 如何在jquery中启动正常功能

image - 如何将高斯滤波器应用于 OpenCV 中的 DFT 输出

android - 将底部边距添加到 ListView 最后一个元素

android - ScrollView 内具有可扩展 textView 的垂直居中 ConstraintLayout (滚动/居中问题)

javascript - 根据页面位置更改类

image - 如何使图像的不连续轮廓保持一致?

java - 在当前帧之前存储视频帧?