我在建立个人电子商务网站时要牢记垂直节奏。对我自己来说只是一个挑战。但是图像对我来说太麻烦了。我需要使用javascript(下面的脚本?)设置它们的高度,对于某些图像,它可以正确执行,而对其他图像则不能。未正确执行的图像的高度为0。
我尝试使用window.onload,但仍然无法正常工作。我也正在寻找合适的香草JS插件,但没有一个可供使用。
function adjustImg(element) {
var images = document.getElementsByTagName(element),
lineHeight = parseInt(window.getComputedStyle(document.body).getPropertyValue('line-height')),
newLineHeight = lineHeight / 2;
for(i = 0; i < images.length; i++) {
var aspectRatio = images[i].offsetWidth / images[i].offsetHeight,
originalHeight = images[i].offsetWidth / aspectRatio,
div = Math.round(originalHeight / newLineHeight),
newHeight = newLineHeight * div;
images[i].style.height = newHeight + 'px';
}
}
我希望所有图像都能正确校正高度。但是就像我说的那样,其中一些由于0高度而没有显示。我的假设是因为图像未完全加载,但是javascript已执行。因此,javascript无法获取offsetWidth和offsetHeight
我不知道如何解决此问题,非常感谢您的帮助。对不起,我的英语。