动态检查元素的高度

时间:2017-09-01 11:04:33

标签: javascript jquery html css viewport

我希望每次网站更改时检查元素的高度,因为视口大小调整或点击事件。

目前我正在使用以下代码:

jQuery(function ($) {
    var height = document.getElementById("head").offsetHeight;

    var x = document.getElementsByClassName("dropdown-menu");
    var i;
    for (i = 0; i < x.length; i++) {
        x[i].style.top = height + 'px';
    }
});

可能是&#34;头部的高度&#34;变化。因此,如果站点/视口有任何更改,我需要检查实际高度。

有办法吗?

4 个答案:

答案 0 :(得分:1)

您可以使用javascript的onresize事件监听器

var header= document.getElementById("head")
header.addEventListener('onresize', function(){
// do your code here
});

答案 1 :(得分:1)

您可以查看窗口调整大小

$( window ).resize(function() {
  //check element height
});

答案 2 :(得分:1)

var element = document.getElementById("head"),
    height;

function eventHandler () {

  height = element.offsetHeight;
  console.log(height);

  // rest of your code

}

window.addEventListener('resize', eventHandler)
element.addEventListener('click', eventHandler)

如果要共享代码逻辑并减少冗余,可以绑定两个不同的事件侦听器并传递与回调相同的功能。

答案 3 :(得分:0)

我的解决方案:

ExpectedConditions

超时是指点击动画后的正确高度。