我正在尝试编写一个JavaScript函数,将图像扩展到始终填充一个div(因此根据需要裁剪顶部或侧面)。这是CSS3代码background-size: cover的JavaScript等效代码。
我无论如何都想不出来。目前为止我有以下代码:
function full_bleed(box_width, box_height, new_width, new_height)
{
var aspect_ratio=new_width/new_height;
if(new_height<box_height) {
new_height=box_height;
new_width=Math.round(new_height*aspect_ratio);
}
if(new_width<box_width) {
new_width=box_width;
new_height=Math.round(new_width/aspect_ratio);
}
return {
width: new_width,
height: new_height
};
}
我想你们其中一个人可能已经有这个方程式了。