2016-09-16 50 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/