0

たとえば、ハッシュ付きの URL がある場合:

www.my_jqm_site.com/#some_page_request

... jqmページイベントシーケンス中のどの時点でjqmはハッシュを読み取りますか?

Event sequence when navigating from jqm_page_A to jqm_page_B ... thanks Muhammed Basil.

  - document --- script time (js is readable, but DOM is not ready yet)
  - document --- ready
  - page B   --- pagebeforecreate
  - page B   --- pagecreate
  - page B   --- pageinit
  - page A   --- pagebeforehide
  - page B   --- pagebeforeshow
  - page A   --- pageremove
  - page A   --- pagehide
  - page B   --- pageshow
  - body     --- onLoad

編集:スクリプト時にハッシュを変更した場合:

<script>
  window.location.hash = "#some_other_page_request" 
</script>

着信ハッシュ「#some_page_request」をオーバーライドするため、jqm は次の場所に移動します。代わりは。

これは、jqm がスクリプト時間以降 (つまり、$(document).ready(...) 以降) にハッシュを読み取ることを示唆しています。

4

1 に答える 1

1

pagebeforehideイベント中。

これは、prom ページ A からページ B への移行中にディスパッチされる最初の要素です。

説明: 実際の遷移アニメーションが開始される前に、遷移元の「fromPage」でトリガーされます。

これは、2 番目の引数としてデータ オブジェクトを受け取る最初のページです。このデータ オブジェクトには、遷移先のページ DOM 要素を含むオブジェクトがあります。

公式ドキュメント: http://api.jquerymobile.com/pagebeforehide/

それより前のすべてのイベントは、ページ作成に共通のイベントであり、最初のページが表示されようとしている最初のアプリの読み込み中にもトリガーされます。

- page B   ---pagebeforecreate
- page B   ---pagecreate
- page B   ---pageinit

これらの 3 つのイベントの間、システムはこれがアプリの読み込みまたはページ遷移であるかどうかを認識していません。新しいページを作成するためだけにここにいます。

于 2013-03-26T09:44:26.933 に答える