我正在尝试根据另一个元素的高度设置某些元素的高度和边距,但是它不起作用。
function matchHeight(divName) {
var Sheight = document.getElementById(divName).style.height;
document.getElementById('bookmark').style.height = Sheight + '45px';
document.getElementById('bookmarkend').style.marginTop = Sheight + '45px';
document.getElementById('bookmarktagI').style.height = Sheight + '255px';
}
我的功能出了什么问题?
如果可能的话,我宁愿不用jquery来做。
最佳答案
如果您的样式是内联设置的,即<div style="height: 100px;"></div>
,那么很可能您的问题是解析height
样式值。在这种情况下,Sheight
将是"100px"
,它将简单地与其他值连接起来,形成100px45px
之类的东西,这并不是很好。
要解决该问题,请使用parseInt
将值解析为整数,并使用正确的加法:
var Sheight = parseInt(document.getElementById(divName).style.height, 10);
document.getElementById('bookmark').style.height = (Sheight + 45) + 'px';