javascript - 使用响应式布局获取 Div 位置

标签 javascript jquery html css

我在页面上有一个 div,当按下按钮时它充当整个页面的覆盖层。这是我遇到的问题:

显示叠加层时,我使用 Javascript 使用以下方法将叠加层从页面上的 div 顶部开始定位:

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

但是,当我改变页面的大小时,而不是动态获取 myVideo div 的新位置,它似乎保留了原始位置。因此,当我展开我的页面时,overlay div 停留在它打开的位置,而不是随着 myVideo div 不断移动。

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

感谢您的帮助。

最佳答案

使用 javascript,您可以使用 .resize() 监听窗口上的宽度/高度变化

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

注意:此解决方案使用 jQuery - https://api.jquery.com/resize/

关于javascript - 使用响应式布局获取 Div 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39522226/

相关文章:

javascript - 如何保持DIV拉伸(stretch)到高度为100%的网页底部并溢出:auto using CSS only?

php - PHP in_array检查数组的最佳方法?

JavaScript canvas : when clearing with context. clearRect,一切都在下一次绘制时重现

javascript - 替换后动画至高度 0

javascript - 如何使用JQuery获取表单中复选框的value属性?

javascript - 我如何最好地混淆 HTML/Javascript/WebGL 代码?

A4 尺寸的 HTML div 大于 A4

javascript - xml nodeValue 字符串解释为数字

java - 替代 DWR

javascript - 使用javascript获取复选框的状态