как «исправить» положение нижнего колонтитула заголовка с помощью jquery mobile с data-position=fixed

я использую jquery mobile, а для верхнего/нижнего колонтитула я использую data-position="fixed".

Однако, когда мы прокручиваем страницу ... нижний колонтитул заголовка исчезает и появляется снова, когда прокрутка останавливается. Есть ли способ, которым мы могли бы просто зафиксировать его на экране, чтобы он отображался все время, пока вы прокручиваете?

Я могу только придумать, как применить фиксированную позицию и не использовать jquerymobile для этих элементов.


person zoom_pat277    schedule 15.06.2011    source источник
comment
Я считаю, что это ожидаемое поведение от jQM   -  person Phill Pafford    schedule 16.06.2011
comment
Эта ветка должна пролить свет на варианты, а также на то, в каком направлении команда jQM работает над исправлением. github.com/jquery/jquery-mobile/issues/58   -  person Keith Adler    schedule 16.06.2011
comment
это ожидаемое поведение, как упомянул Фил Паффорд.   -  person root    schedule 16.06.2011


Ответы (2)


Я изо всех сил старался заставить это работать. Если вы хотите, вы можете удалить функцию, которая изменяет класс верхнего и нижнего колонтитула с .ui-fixed-overlay на .ui-fixed-inline и удалить анимацию webkit из .fade.in и .fade.out, но у меня было нет замка, препятствующего исчезновению окон. Однако я считаю, что JQM пересчитывает положение элементов верхнего и нижнего колонтитула только после прокрутки.

Я поместил следующий css в div страницы, чтобы удалить анимацию webkit.

.ui-fixed-inline { непрозрачность: 1! важно; дисплей:блокировать!важно; -webkit-имя-анимации: нет! важно; } .fade.in, .fade.out { непрозрачность: 1! важно; -webkit-имя-анимации: нет! важно; дисплей:блокировать!важно; }

Я знаю, что это не то, что вам нужно, но это ускоряет повторное появление элементов верхнего и нижнего колонтитула (это выглядит немного прерывисто). Если вы не хотите переписывать javascript JQM, который управляет позиционированием верхнего и нижнего колонтитула, я не думаю есть любой простой способ сделать это, так как код фиксированной позиции JQM создан для изменения позиции после прокрутки пользователем. Я буду продолжать искать и редактировать этот ответ, если найду способ.

person Chase    schedule 16.06.2011
comment
Извините за поздний ответ... только что увидел ваш ответ... в итоге мы не использовали data-position=fixed. однако - я собирался попробовать css для фиксации позиции, а не атрибута роли данных. Постараюсь выкроить немного времени и посмотреть, как работает ваше решение... Большое спасибо за ваше время!! - person zoom_pat277; 01.07.2011

У меня отлично работает более простая версия кода Чейза:

/* sass - remove toolbar fade */
.nofade{
 &.in, &.out {
    -webkit-animation-name:none;
 }
}


Обратите внимание, что панели инструментов, которые можно скрыть, используют то же свойство затухания, поэтому требуется следующее:

$.mobile.fixedToolbars.setTouchToggleEnabled false  # coffeescript
person Peter Ehrlich    schedule 01.12.2011