я пытаюсь использовать AngularJS (и ui.router) с этим шаблоном для частичного и шаблонного. (Чтобы сделать его одностраничным).
Хотя моя страница отображается нормально, тег .content-wrapper
div получает неправильный атрибут min-height
(564px;) при использовании с angular. Но когда я просматриваю starter.html
, образец страницы, все в порядке (494px;).
Может кто-нибудь объяснить мне, почему он это делает? Это бутстрап? Ангуляр или тема? Или комбинация?
Источник (отрендеренный в хроме, свернутый для уменьшения размера):
То же самое происходит и при просмотре на больших экранах. Нижний колонтитул теперь выходит за пределы экрана, за пределы области просмотра, и появляется полоса прокрутки, но контента нет, так как это просто заголовок страницы для целей тестирования.
У кого-нибудь есть идея, где искать?
ИЗМЕНИТЬ:
Узнал в чем проблема, решения пока не нашел:
В app.js, используемом темой, есть следующий код:
var neg = $('.main-header').outerHeight() + $('.main-footer').outerHeight();
var window_height = $(window).height();
Я поместил этот код в тег script внизу страницы и сделал из него предупреждение:
<script>
var head = $('.main-header').outerHeight();
var foot = $('.main-footer').outerHeight();
var window_height = $(window).height();
alert("Header: " + head + " Footer: " + foot + " Window: " + window_height);
</script>
Высота заголовка равна NULL, нижний колонтитул — 31, а окно — 595. Когда я выполняю эту команду отдельно в консоли (после того, как страница полностью отобразится), она дает мне: заголовок: 50, нижний колонтитул: 51, высота окна 595. (51 + 50 = 101. 595 - 101 = 494. Правильная высота обертки содержимого).
Таким образом, JQuery не может определить высоту верхнего и нижнего колонтитула, вероятно, потому, что они еще не отрисованы. Так что это, вероятно, проблема ui.router/Angular?
Сначала я загружаю угловой и угловой маршрутизатор пользовательского интерфейса, а затем мои угловые скрипты. Затем JQuery, начальная загрузка и, наконец, app.js для темы.
Кто-нибудь знает, как это решить?