@AlShest

Как центрировать модальное окно BX.PopupWindow?

На странице установлен компонент - модальное окно. Форма расположена не в начале, а внизу страницы. Из-за этого возникли проблемы с расположением модального окна.
Если установить значение offsetTop: window.pageYOffset, то модальное окно открывается слишком низко, вплотную к футеру. А если 0, то открывается в самом начале страницы. Мне необходимо, чтобы окно открывалось по центру страницы при её текущем положении.

<script>
			BX.ready(function(){
				var m_popup = BX.PopupWindowManager.create('sender_subscribe_component', window.body, {
					autoHide: true,
                    width: 320,
                    offsetTop: window.pageYOffset,
					offsetLeft: (document.body.clientWidth - 400)/2,
					lightShadow: true,
					closeIcon: true,
					closeByEsc: true,
					overlay: {
						backgroundColor: 'rgba(0,0,0,0.82)', opacity: '80', width: '100%'
					}
				});
				m_popup.setContent(BX('sender-subscribe-response-cont'));
				m_popup.show();
			});
		</script>
  • Вопрос задан
  • 62 просмотра
Решения вопроса 1
winer
@winer
занимаюсь разработкой сайтов на 1c-bitrix
Центрировать popup можно с помощью его методов adjustPosition и resizeOverlay;
Например так:
var popup = BX.PopupWindowManager.create("sender_subscribe_component", null, {
    autoHide: true,
    offsetLeft: 0,
    offsetTop: 0,
    overlay: true,
    closeByEsc: true,
    events: {
        onAfterPopupShow: function () {
            popup.adjustPosition();
            popup.resizeOverlay();
        }
    }
});

popup.show();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы