jQuery mobile скрывает начальную страницу вместо ее удаления - PullRequest
2 голосов
/ 29 марта 2012

Я искал способ удалить контейнер начальной страницы после того, как jQuery mobile загрузил содержимое следующей страницы через $. Mobile.changePage (...)

Что яЯ испытываю то, что этот начальный элемент DIV, созданный при первой показе страницы, всегда будет оставаться на странице - и будет только скрыт после вызова $ .mobile.changePage (...)

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

У кого-нибудь есть решение?Я искал его в Интернете, но безрезультатно.

Я также пытался сделать $ ('# first-page'). Remove () после того, как я вызвал $ .mobile.changePage (...),но это удалит начальную страницу и сделает новую загруженную страницу скрытой!

РЕДАКТИРОВАТЬ: решается путем очистки исходного DIV с использованием .html ("")

Ответы [ 3 ]

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

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

$.mobile._bindPageRemove

Итак, это может выглядеть так

newpage.attr( "data-" + $.mobile.ns + "external-page", true ).one( 'pagecreate', $.mobile._bindPageRemove );

ПРИМЕЧАНИЕ. Поскольку это скрытый метод, он является частью скрытого API и может быть изменен без уведомления при обновлении. Тщательно проверьте при обновлении, если вы используете это.

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

Вы можете просто загрузить следующую страницу без ajax, это должно удалить начальную страницу.

data-ajax="false"

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

0 голосов
/ 17 августа 2013

Я сделал:

 $.mobile.changePage('login.html', {changeHash:false});

changeHash (по умолчанию: true) Тип: Boolean Определяет, является ли хэш в адресная строка должна быть обновлена. Это имеет эффект создания нового запись истории браузера. Это также означает, что, если установлено значение false, входящая страница заменит текущую страницу в истории браузера, поэтому страница, с которой пользователь уходит, не будет доступна через кнопку браузера «Назад».

...