Разное поведение всплывающего окна css - PullRequest
0 голосов
/ 26 февраля 2012

Код ниже хорошо работает на локальном компьютере, но на удаленном сервере всплывающее окно не учитывает ширину прокрутки и появляется в верхней части страницы, даже когда я прокручивал страницу вверх и вниз. Проблема появляется только в IE и только на удаленном сервере. Файлы одинаковые. Что я должен проверить?

HTML

<div style="position:absolute;">
    <div id="a_div">
        123
     </div>
</div>

CSS

#a_div {
    display:none;
    position:fixed;
    width:850px;
    top:35px;
    border:1px solid #B1B8C7;
    background:white;
    z-index:3000;
}

JS

function showaDiv() {
    var div = document.getElementById('a_div');
    var width = document.body.clientWidth;
    if (div) {
        div.style.left = Math.round((width-850)/2)+'px';
        div.style.display = 'block';
        document.getElementById('a_bgdiv').style.display = 'block';
    }    
}

1 Ответ

0 голосов
/ 26 февраля 2012

Попробуйте эту скрипку , если хотите центрировать ее по вертикали

function showaDiv() {
    var div = document.getElementById('a_div');
    var width = document.body.clientWidth;
    var height = getDocHeight();
    if (div) {
        div.style.left = Math.round((width-850)/2)+'px';
        div.style.display = 'block';
        div.style.top = Math.round((height-div.clientHeight)/2)+'px';
        //document.getElementById('a_bgdiv').style.display = 'block';
    }    
}

function getDocHeight() {
    var D = document;
    return Math.max(
        Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
        Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
        Math.max(D.body.clientHeight, D.documentElement.clientHeight)
    );
}

Только что добавили верх.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...