jquery minScrollBack: «бесконечность» не работает - PullRequest
0 голосов
/ 14 июля 2011

Страница по-прежнему автоматически прокручивается до последней позиции даже после применения переопределения. Я не правильно делаю или что?

<link rel="stylesheet" href="css/jquery.mobile-1.0b1.css" />
<link rel="stylesheet" href="css/jquery.mobile.datebox.css" />
<script type="text/javascript" charset="utf-8" src="js/jquery-1.6.2.min.js"></script>
<script type="text/javascript" charset="utf-8" src="js/phonegap.js"></script>
<script type="text/javascript" charset="utf-8">
     $(document).bind("mobileinit", function(){ //jquery mobile override
    $.extend(  $.mobile , {
      minScrollBack:'infinity'

      });
    });
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.mobile-1.0b1.js"></script>
<script type="text/javascript" charset="utf-8" src="js/custom.js"></script>

1 Ответ

0 голосов
/ 15 июля 2011

http://jsfiddle.net/puUan/1/

Этот jsfiddle показывает, как класс .ui-title устанавливает фокус на верх страницы.

<h1 class="ui-title">title page 1</h1>

должно работать.Вот что происходит: при переходе на другую страницу (или в другом подобном событии) jQuery вызывает функцию с именем reFocus(), которая выглядит следующим образом:

//direct focus to the page title, or otherwise first focusable element
function reFocus( page ) {
    var lastClicked = page.jqmData( "lastClicked" );

    if( lastClicked && lastClicked.length ) {
        lastClicked.focus();
    }
    else {
        var pageTitle = page.find( ".ui-title:eq(0)" );
        if( pageTitle.length ) {
           pageTitle.focus();
        }
        else{
            page.find( focusable ).eq( 0 ).focus();
        }
    }
}

строка: page.find( focusable ).eq( 0 ).focus();, вероятно, фокусируется на ссылке, которую вынажал.

Альтернатива: -

закомментируйте этот вызов в transistionPages(

reFocus( toPage ); 

до:

//reFocus( toPage ); 

Это остановит вызов функции в целом (лично я не вижу причины для этого), но если вы используете jQuery Mobile из CDN, это, вероятно, невозможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...