使用Javascript获取图像维度并将其应用于任何其他元素?

使用Javascript获取图像维度并将其应用于任何其他元素?,javascript,html,css,Javascript,Html,Css,我已经试过了,但它不起作用,我怎么能让它起作用,让“天空2”获得与“天空”相同的高度和宽度?我可能会把sky2换成div或其他什么 函数ImgWH(){ var mImg=document.querySelector(“天空”); var mWidth=mImg.clientWidth; var mHweight=mImg.clientHeight; document.getElementById(“sky2”).style.width=mWidth; } #天空{ 高度:50vh; 宽度:1

我已经试过了,但它不起作用,我怎么能让它起作用,让“天空2”获得与“天空”相同的高度和宽度?我可能会把sky2换成div或其他什么

函数ImgWH(){
var mImg=document.querySelector(“天空”);
var mWidth=mImg.clientWidth;
var mHweight=mImg.clientHeight;
document.getElementById(“sky2”).style.width=mWidth;
}
#天空{
高度:50vh;
宽度:100%;
}

首先必须调用函数,但当函数运行时,必须记住在设置的值上添加度量单位,否则不知道元素的宽度

函数ImgWH(){
var mImg=document.getElementById(“天空”);
var mWidth=mImg.clientWidth;
var mHweight=mImg.clientHeight;

document.getElementById(“sky2”).style.width=mWidth+“px”//从第一个图像获取宽度,并将其设置为从第二个图像的宽度(注意“px”是必需的),不要忘记启动该函数。

函数ImgWH(){
var myImg=document.getElementById(“天空”);
var myImg2=document.getElementById(“sky2”);
var mWidth=myImg.width;
var mHweight=myImg.clientHeight;
myImg2.style.width=mWidth+'px';
}
ImgWH();
#天空{
高度:50vh;
宽度:100%;
}


setTimeout()
不是必需的。我在没有设置的情况下尝试了它,但第二张图片的大小没有调整。如果您查看我的答案,您会发现它是有效的。您是对的,但是删除了setTimeout())这对allone没有帮助。我必须从图像中删除onload函数,然后它才能正常工作。令人惊讶的是,我认为onload可以确保图像存在,否则它可能会很早出现。肯定不应该有这样的效果。我更正了它。