获取动态变化元素的高度

时间:2017-03-04 20:56:47

标签: javascript jquery

这段代码获得.divone的高度(响应速度)并将其作为margin-top添加到.divtwo

    var height = $(".divone").height();
    $('.divtwo').css({"margin-top": height + "px"});

如果浏览器窗口调整大小并且height的高度发生变化,我怎样才能实现.divone更新?

我添加了这一行,但我根本没有工作:

 $(window).on("resize", height)

2 个答案:

答案 0 :(得分:2)

jQuery' s .on(String event, Function handler)至少需要两个参数:要作为字符串监听的event,然后在事件触发时执行function。 / p>

function recalcDivTwo() {
  var height = $('.divone').height();
  $('.divtwo').css({"margin-top": height + "px"});
}

然后将其添加到document.ready handler:

$(window).on("resize", recalcDivTwo);

您还可以将处理函数定义为调用中的匿名函数:

$(window).on("resize", function() {
  $('.divtwo').css({"margin-top": $('.divone').height() + "px"});
});

在短处理程序函数上,除了特定的事件处理之外没有任何其他目的,我使用匿名的内联函数定义,因为它也不会污染全局命名空间。

  

https://api.jquery.com/on/

答案 1 :(得分:1)

$(window).resize(func);
Var func=function(){
var height = $(".divone").height();
    $('.divtwo').css({"margin-top": height + "px"});
}