我有一个vue.js组件,它有一个带有图像和不同块的大型html模板。
<div>
...
</div>
...
<div class="image-block">
<img src="..." alt="" width="..." height="...">
</div>
...
如何获得图像块的offsetHeight?
答案 0 :(得分:1)
对你来说更清楚:
mounted() {
let imageBlock = document.getElementsByClassName('information-block__img');
// => A DOMElement set
// If you want a jQuery set :
let imageBlockJQ = $('.information-block__img') ;
for (let element in imageBlock) {
let image = imageBlock[element];
// So a DOMElement
let imageHeight = image.offset(); // => FAIL
// A DOMElement does'nt know the `offset` method. A jQuery set does
// so:
let imageHeight = $(image).offset();
// Or
let imageHeight = image.offsetTop ; // => RIGHT, a property
}
答案 1 :(得分:0)
只需使用element.offset()
电话。
答案 2 :(得分:0)
我找到了一个适用于我的解决方案,但只有在我调整页面大小时才有效:
mounted() {
let infoBlock = document.getElementsByClassName('information-block');
for (let element in infoBlock) {
$(window).resize(function() {
$('.information-block__container').height($('.information-block__img').height());
});
}
}