Подтвердить что ты не робот

Страница изменения мобильных телефонов JQuery

У меня есть два расположения столбцов для веб-страницы с сайта, http://jquerymobile.com/demos/1.0.1/

Теперь они предоставили положения changePage, используя <a href="#xxx" data-role="button">Sample</a>

Но мой вопрос заключается в том, как программно изменять страницу с помощью кода.

$.mobile.changePage("#xxx"); не работает для меня

4b9b3361

Ответ 1

Вот вам настоящий простой пример: http://jsfiddle.net/shanabus/YjsPD/

$.mobile.changePage("#page2");

Документация: http://api.jquerymobile.com/jQuery.mobile.changePage/

Другие примеры:

//transition to the "about us" page with a slideup transition
$.mobile.changePage( "about/us.html", { transition: "slideup"} );

//transition to the "search results" page, using data from a form with an ID of "search""   
$.mobile.changePage( "searchresults.php", {
    type: "post",
    data: $("form#search").serialize()
});

//transition to the "confirm" page with a "pop" transition without tracking it in history   
$.mobile.changePage( "../alerts/confirm.html", {
    transition: "pop",
    reverse: false,
    changeHash: false
});

UPDATE

Как отмечает Chase Roberts в комментариях ниже, этот метод changePage был устарел в версии 1.4. Вот документация для нового события pagecontainer change.

Пример:

$.mobile.pageContainer.pagecontainer("change", "#page", { options });

Это также было рассмотрено по этому вопросу SO: Как изменить страницу в jQuery mobile (1.4 beta)?

Ответ 2

Я знаю, что это уже ответили, но верно ли правильный ответ, почему он не работает, заключается в том, что синтаксис неверен?

$. mobile.changePage требует объекта DOM (для отображения страниц в одном файле HTML с использованием синтаксиса хэша), а не только для строки. Таким образом, правильный синтаксис для данного примера:

$.mobile.changePage($("#xxx"));

Это должно сработать!

Надеюсь, что это поможет

Ответ 3

$.mobile.changePage($("#page2")); 

- правильный способ изменения, между которым div является видимой страницей.

Если вы используете

$.mobile.changePage("#page2");

DOM будет перезагружен, и все события ondocumentready будут запущены.

Ответ 4

Нет, это правильный синтаксис $.mobile.changePage("#page2"); или $.mobile.changePage( "about/us.html");, см. Api

Ответ 5

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

$.mobile.changePage("#page2");

Ответ 6

function signin() {

    alert('singin button has been clicked');
    $.ajax({
        type: 'POST',
        url: 'http://localhost:8080/json/login',
        dataType: "json",
        headers: {'Authorization':'Basic '+ btoa('abc' + ':' + '12345')},
        contentType: 'application/json',
        data:loginFormToJSON(),
        success: function(data, textStatus, jqXHR)
        {
            if(data.token !="ErrorID-11000"){
                alert('login successfully');
                //document.location.href = "accountinfo.html";
                //document.getElementById("loginBtn").replace="accountinfo.html";
                $.mobile.changePage("accountinfo.html");
            }

            else{
                alert('userid password did not match');
            }
        },
        error: function(jqXHR, textStatus, errorThrown){
            alert('login error:'+errorThrown + textStatus);
        }
    });

}

Из приведенного выше кода я нахожусь на странице входа и перехожу на страницу учетных записей при успешном входе в систему, это работает с JQuery mobile 1.4.

Надеюсь, что это поможет.