Offsetheight и Offsetwidth неверно рассчитывает на первом событии OnClick, не вторым

Я написал следующий скрипт для отображения скрытого элемента, затем исправить его положение в центр страницы.

function popUp(id,type) {
var popUpBox = document.getElementById(id);

popUpBox.style.position = "fixed";
popUpBox.style.display = "block";

popUpBox.style.zIndex = "6";

popUpBox.style.top = "50%";
popUpBox.style.left = "50%";

var height = popUpBox.offsetHeight;
var width = popUpBox.offsetWidth;
var marginTop = (height / 2) * -1;
var marginLeft = (width / 2) * -1;

popUpBox.style.marginTop = marginTop + "px";
popUpBox.style.marginLeft = marginLeft + "px";
}

Когда эта функция называется событием onClick, OffaTheight и OffsetWidth рассчитываются неправильно, поэтому не регулярно центрирует элемент. Если я нажму на элемент onClick во второй раз, вычисляется Offsetheight и Offsetwidth правильно.

Я пытался изменить заказ во всех отношениях, и это сводит меня с ума! Любая помощь очень ценится!

6
задан saoyr5 13 September 2011 в 15:27
поделиться