2013-07-26 4 views
1

У меня есть отзывчивый сайт с использованием jQuery mobile.Как обновить стили jQuery Mobile при изменении размера страницы?

При определенном размере я заменяю верхний и нижний колонтитулы (перемещаясь от мобильного телефона, как внешний вид, к более традиционному дизайну), отображая заголовок высокого разрешения и скрывая низкий уровень разрешения.

Проблема, с которой я столкнулся, заключается в том, что стили JQM, похоже, не применяются к скрытым элементам, поэтому, когда я настраиваю размер экрана, стили все испорчены.

Я попытался это ...

 $(window).on('resize', function() { 
      $.mobile.activePage.trigger('create'); 
     }); 

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

ответ

2

Он вообще ничего, потому что вы вызываете триггер с некорректным параметром не делать.

Оно должно быть:

$(window).on('resize', function() { 
    $.mobile.activePage.trigger('pagecreate'); 
}); 

Create только повысит содержание страницы, pagecreate увеличит заголовок страницы, содержание и колонтитул.

Рабочий пример: http://jsfiddle.net/Gajotres/PMrDn/52/

+0

Спасибо, что, кажется, частично работает для меня сейчас (у меня другие проблемы) –

0

Попробуйте что-то вроде:

$(window).on('resize', function() 
{ 
    jQuery.mobile.changePage(window.location.href, 
    { 
     allowSamePageTransition: true, 
     transition: 'none', 
     reloadPage: true 
    }); 
}); 
+0

К сожалению я изменил свой ответ по ошибке. – Gajotres

+0

Это не сработает для меня - я использую странный гибрид jQM и Backbone, поэтому я использую только jQM для передней части вещей. Начинаем пересматривать это решение. –

Смежные вопросы