0

如何使网站上的 div 居中?我有这样的脚本:

$(document).ready( function(){    

    $('.cod').click(function() {
    var div_name = $(this).attr('id');

    $('#overlay_window').load('/templates/' + div_name + '_template.php', function(){
    var div_width = $('#'+div_name+'-overlay').width();
    var div_height = $('#'+div_name+'-overlay').height();
    $('#overlay_window').css("width", ""+div_width+"px")
    $('#overlay_window').css("height", ""+div_height+"px")
    var div2_width = $('#overlay_window').width();
    var div2_height = $('#overlay_window').height();
    var window_width = $(window).width();
    var window_height = $(window).height();

    var widthoffset = (window_width - div2_width) / 2;  
    var heightoffset = (window_height - div2_height) / 2;   
    $('#overlay_window').css("left", "" + (widthoffset) + "px");
    $('#overlay_window').css("top", "" + (heightoffset + 750) + "px");
    $('#overlay_background').fadeIn(800);
    $('#overlay_window').fadeIn(800);
    });
    });




    });

但是它将div从页面顶部居中,如果它向下滚动它会出现在顶部而不是我滚动的地方,有人可以帮忙吗?

4

2 回答 2

0

position: fixed无论用户滚动到哪里,为什么不直接标记并保留它呢?那么你就不需要任何形式的 js 诡计了。

但是,为了回答您当前的问题,您似乎提供了一次居中,您永远不会对窗口的滚动事件做出反应:

 $(window).scroll(function() { $('#divID').center(); });
于 2012-12-14T18:09:14.163 回答
0

你可以position:fixed;在你的#overlay_window. 此 div 将固定到窗口中的某个位置,而不是文档中。

于 2012-12-14T18:11:17.897 回答