非表示の要素を表示し、その位置をページの中央に固定する次のスクリプトを作成しました。
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イベントによって呼び出されると、offsetHeightとoffsetWidthが正しく計算されないため、要素が正しく中央に配置されません。onclick要素をもう一度クリックすると、offsetHeightとoffsetWidthが正しく計算されます。
私は想像できるあらゆる方法で順序を変更しようとしました、そしてこれは私を夢中にさせています!どんな助けでも大歓迎です!