2016-09-16 54 views
1

我在页面上有一个div,当按下按钮时它充当整个页面的覆盖层。这是我遇到的问题:获取具有响应式布局的Div位置

当叠加显示时,我使用Javascript功能来定位叠加层使用下面的方法在一个页面上的div的顶部开始:

var elementTop = $("#myVideo").offset().top; 
$('#lightBoxBackground').css('top', elementTop); 

然而,当我改变页面大小,而不是动态获取div的新位置时,它似乎保持原来的位置。所以,当我展开我的页面时,覆盖div停留在它被打开的位置,而不是随着myVideo div一直移动。

有没有办法动态地继续获取div的新位置,因为页面布局使用html,css和javascript更改,这样我的覆盖div与myVideo div一起移动?我是JavaScript新手,检查了很多问题,但没有发现任何有用的东西。

感谢您的任何帮助。

回答

3

使用,你可以听的JavaScript的窗口的宽度/高度的变化与.resize()

$(window).resize(function() { 
    //resize just happened, update your positioning values 
}); 

注意:此方法使用jQuery的 - https://api.jquery.com/resize/