jQueryMobile 1.1-rc1 Исправлен заголовок, при котором страница прокручивалась, когда она не нужна - PullRequest
4 голосов
/ 15 марта 2012

Я использую новые фиксированные заголовки, доступные в jQM 1.1-rc1

Страница выглядит следующим образом

<div data-theme="a" data-role="page" data-title="Home" id="home_page" >
    <div data-role="header" data-theme="b" data-position="fixed" data-tap-toggle="false">
        <h1>Home</h1>   
    </div>
    <div data-role="content" id="categories_content">
        <ul data-role="listview" data-theme="a" id="categories_list">
            <li>something</li>
            <li>something else</li>
        </ul>
    </div> 
    <div data-role="footer" data-position="fixed" data-tap-toggle="false"><h1>Home</h1></div>
</div>

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

Кто-нибудь сталкивался с этой проблемой раньше, и если да, как вы ее преодолели?

Вот jsfiddle, показывающий проблему:1010 * jsFiddle

Заранее спасибо.

1 Ответ

1 голос
/ 15 марта 2012

Похоже, это ошибка в jQuery Mobile.Заполнение добавляется в элемент (ы) .ui-page для учета верхнего и нижнего колонтитула, но высота не корректно обновляется при загрузке страницы или при изменении размера браузера.Это можно исправить с помощью небольшого взлома:

//bind to the resize event for the window element
​$(window)​.on('resize', function () {

    //set a timeout to allow jQuery Mobile to update the element before we correct the value
    setTimeout(function () {

        //change the height of the current page to get rid of the scroll bar
        $.mobile.activePage.css('minHeight', '-=85px');
    }, 50);

//trigger a resize event onload
}).trigger('resize')​;​​

Обновление

Я запустил отчет об ошибках в Github для jQuery Mobile, чтобы решить эту проблему: https://github.com/jquery/jquery-mobile/issues/3825

...