Моя страница имеет статический заголовок (jqm), который условно отображается в зависимости от параметра. Ну, привязка работает, то есть отображается условно, содержимое страницы не перемещается вверх, когда заголовок не отображается.нокаут, если привязка к jquery mobile static header сохраняет пробел
Я также попробовал привязку css для установки отображения без везения.
HTML:
<div class="home-header" data-role="header" data-position="fixed" data-theme="c" data-bind="if: isFish, style: {display:isFish()? 'block':'none'} ">
<div class="logo" style="margin:0 auto;"></div>
</div>
<div>Content starts here</div>
<div data-bind="text:count"></div>
<div data-bind="text:isFish"></div>
JavaScript:
var viewModel = new function() {
var self = this;
if (sessionStorage.clickcount) {
sessionStorage.clickcount = Number(sessionStorage.clickcount) + 1;
} else {
sessionStorage.clickcount = 1;
}
self.count = ko.observable(sessionStorage.clickcount);
self.isFish = ko.computed(function() {
return self.count() % 2 ==0;
});
}; //viewModel
$(document).ready(function() {
ko.applyBindings(viewModel);
});
Нажмите кнопку «Выполнить» несколько раз, чтобы увидеть, что изображение рыбы скрыто или отображается в зависимости от количества.
Я хочу, чтобы строка «Содержимое начинается здесь» на самом верху, когда изображение не отображается. Как это сделать? Заранее спасибо.
Вау, мне потребовалось некоторое время, чтобы понять реальную проблему, но это странно один. Я обнаружил, что в случаях, когда это * не * отображается, если я изменяю размер окна браузера даже на 1 пиксель, он подпрыгнет. Преступник - это 'div data-role =" page "', который вставлен (я думаю) jquery-mobile, который имеет дополнение (как стиль элемента, так и класс), заставляя это пространство появляться. - Я не эксперт по jquery-mobile, но я бы рискнул предположить, что вам нужно использовать 'data-bind =" css ... "' и установить соответствующий класс jquery, чтобы скрыть предмет, в отличие от встроенного стиль? – Jeroen
Да, вы правы. Он будет вскакивать, если окно будет изменено и да, data-role = "page" вставляет дополнение. Я попытаюсь использовать привязку css для привязки класса и скрыть это с помощью jquery. – WhatsInAName