2015-01-27 3 views
0

Я разрабатываю веб-приложение с jQM. Это одностраничное приложение с большим количеством виртуальных страниц, созданных скриптом. Я использую много диалогового окна, и иногда, закрывая этот диалог, мое приложение возвращается на стартовую страницу (3 страницы в истории).jQueryMobile закрыть диалог без изменения страницы

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

Я нашел много подобных проблем, но все для jQM 1.2 или старше. Я использую jQM 1.5.3.

Я добавил инструмент log-page-event.js в моем сценарии, и это дает мне это:

Во-первых, при загрузке страницы "visite_client-86871"

[Log] pagebeforeshow (1422376478507) (log-page-events.js, line 44) 
    page: div.visite_client.ui-page.ui-page-theme-a.ui-page-header-fixed.ui-page-footer-fixed#visite_client-86871 
    data-url: visite_client-86871 

[Log] hashchange (1422376481313) (log-page-events.js, line 44) 
    location: http://m2.biocrm.fr/#visite_client-86871 

[Log] pagehide (1422376482645) (log-page-events.js, line 44) 
    page: div.ui-page.ui-page-theme-a#edit_visite 
    data-url: edit_visite 

[Log] pageshow (1422376483145) (log-page-events.js, line 44) 
    page: div.visite_client.ui-page.ui-page-theme-a.ui-page-header-fixed.ui-page-footer-fixed.ui-page-active#visite_client-86871 
    data-url: visite_client-86871 

[Log] pagechange (1422376483171) (log-page-events.js, line 44) 
    page: div.visite_client.ui-page.ui-page-theme-a.ui-page-header-fixed.ui-page-footer-fixed.ui-page-active#visite_client-86871 
    data-url: visite_client-86871 

Затем я нажимаю открыть диалоговое окно:

[Log] popstate (1422376499968) (log-page-events.js, line 44) 
    location: http://m2.biocrm.fr/#visite_client-86871&ui-state=dialog 
    state.hash: 
[Log] hashchange (1422376501192) (log-page-events.js, line 44) 
    location: http://m2.biocrm.fr/#visite_client-86871&ui-state=dialog 

Затем я закрыть диалоговое окно:

[Log] popstate (1422376521377) (log-page-events.js, line 44) 
    location: http://m2.biocrm.fr/#visite_client-86871 
    state.hash: #visite_client-86871 

[Log] hashchange (1422376521403) (log-page-events.js, line 44) 
    location: http://m2.biocrm.fr/#visite_client-86871 

И без причины, то вернуться на главную страницу «tournees»

[Log] pagebeforechange (1422376521407) (log-page-events.js, line 44) 
    page: div.ui-page.ui-page-theme-a.ui-page-footer-fixed#tournees 
    data-url: tournees 

[Log] pagebeforechange (1422376521459) (log-page-events.js, line 44) 
    page: div.ui-page.ui-page-theme-a.ui-page-footer-fixed#tournees 
    data-url: tournees 

[Log] pagebeforehide (1422376521501) (log-page-events.js, line 44) 
    page: div.visite_client.ui-page.ui-page-theme-a.ui-page-header-fixed.ui-page-footer-fixed.ui-page-active#visite_client-86871 
    data-url: visite_client-86871 

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

спасибо.

ответ

0

Я установил его, добавив data-history="false" во всплывающее окно.

Я не совсем уверен, есть где-то ошибка или нет, но она работает для меня вот так, поэтому на случай, если это поможет кому-то ...