en

  Router class for adjusting jQueryMobile functions and Backbone.Router functions.
  Even if Backbone.Router does not start routing, natigate() method works good with jQM framework.

ja

  jQueryMobile と Backbone.Router を調停する Router クラス
  ルーティングを開始していない場合にも、navigate() は jQM フレームワークを使用して機能する。

### Hierarchy

- Router

## Index

### Properties

- BACK_DESTINATION_URL
- DATA_BACK_DESTINATION
- DATA_NO_HASH_CHANGE
- DATA_NO_VCLICK_HANDLE
- DELAY_TIME
- SUBFLOW_PARAM
- s_back
- s_firstChangePage
- s_initOptions
- s_lastClickedTime
- s_lastIntent
- s_lastNavigateInfo
- s_loadUrl
- s_rootContexts
- s_router

### Methods

- _getJqmHistory
- _initialize
- _popIntent
- _pushIntent
- back
- beginSubFlow
- bindEvents
- canResolveRoute
- cancelSubFlow
- changePage
- commitSubFlow
- customJqmBack
- customLoadUrl
- decideDirection
- detectAdditionalBackDistance
- detectSubFlowBaseInfo
- finishSubFlow
- followAnchor
- fromHashChanged
- getQueryParameters
- initFirstPageIfNeeded
- isBackButtonClicked
- isInSubFlow
- isJustBeforeVclicked
- isRouting
- isTopPage
- navigate
- navigateFromTop
- needDefaultOperation
- onAnchorVclicked
- onRouteFailed
- onRouteSucceeded
- pathToJqmDataUrl
- pushContext
- register
- registerPageStack
- start
- startSubFlow
- stop
- treatUrlHistory

### Object literals

- s_defaultInitOptions
- s_defaultNavigateOptions

## Properties

### Static Private BACK_DESTINATION_URL

BACK_DESTINATION_URL: string = "backDstUrl"

- Defined in Router.ts:188

### Static Private DATA_BACK_DESTINATION

DATA_BACK_DESTINATION: string = "data-back-dst"

- Defined in Router.ts:185

### Static Private DATA_NO_HASH_CHANGE

DATA_NO_HASH_CHANGE: string = "data-no-hash-change"

- Defined in Router.ts:186

### Static Private DATA_NO_VCLICK_HANDLE

DATA_NO_VCLICK_HANDLE: string = "data-no-vclick-handle"

- Defined in Router.ts:187

### Static Private DELAY_TIME

DELAY_TIME: number = 200

- Defined in Router.ts:184

### Static Private SUBFLOW_PARAM

SUBFLOW_PARAM: string = "subFlowParam"

- Defined in Router.ts:189

### Static Private s_back

s_back: function = null

- Defined in Router.ts:183

#### Type declaration

- - (): void

  - #### Returns void

### Static Private s_firstChangePage

s_firstChangePage: boolean = true

- Defined in Router.ts:181

### Static Private s_initOptions

s_initOptions: InitOptions

- Defined in Router.ts:175

### Static Private s_lastClickedTime

s_lastClickedTime: number = null

- Defined in Router.ts:179

### Static Private s_lastIntent

s_lastIntent: Intent

- Defined in Router.ts:180

### Static Private s_lastNavigateInfo

s_lastNavigateInfo: NavigateInfo

- Defined in Router.ts:178

### Static Private s_loadUrl

s_loadUrl: function = null

- Defined in Router.ts:182

#### Type declaration

- - (fragment: string): boolean

  - #### Parameters

    - ##### fragment: string

    #### Returns boolean

### Static Private s_rootContexts

s_rootContexts: Object

- Defined in Router.ts:177

### Static Private s_router

s_router: Router = null

- Defined in Router.ts:176

## Methods

### Static _getJqmHistory

- _getJqmHistory(): any

- - Defined in Router.ts:795
  en

    Get jQM's history object

  ja

    jQM の History オブジェクトの取得

  internal

  #### Returns any

### Static _initialize

- _initialize(options: InitOptions): boolean

- - Defined in Router.ts:218
  en

    for initialize Router. this function is called in framework.

  ja

    この関数はフレームワーク内部で使用される。

  internal

  #### Parameters

  - ##### options: InitOptions

    - `en` init options
    - `ja` 初期化オプション

  #### Returns boolean

  - `en` true: succeeded / false: failed.
  - `ja` true: 成功 / 失敗

### Static _popIntent

- _popIntent(): Intent

- - Defined in Router.ts:558
  en

    Get Intent object by framework.

  ja

    Intent を取得。フレームワークが使用する。

  internal

  #### Returns Intent

### Static _pushIntent

- _pushIntent(intent: Intent): void

- - Defined in Router.ts:548
  en

    Store Intent object by framwork.

  ja

    Intent を格納。 フレームワークが使用する。

  internal

  #### Parameters

  - ##### intent: Intent

  #### Returns void

### Static back

- back(): void

- - Defined in Router.ts:512

  @ en Back to previous history.
  It's same as browser back button's behaviour.
  [Note] If set the jQM: data-rel="back", work as well.

  ja

    履歴を戻る
    ブラウザの戻るボタンと同じ挙動。
    jQM: data-rel="back" を指定しても同じであることに注意。

  #### Returns void

### Static beginSubFlow

- beginSubFlow(url: string, options: NavigateOptions, transition?: string, reverse?: boolean): void

- - Defined in Router.ts:595
  en

    Begin sub flow transaction.

  ja

    sub flow トランザクションの開始

  #### Parameters

  - ##### url: string

    - `en` set a navigate URL. (relative path / absolute path / fragment)
    - `ja` 遷移 URL を指定 (相対パス/絶対パス/フラグメント)

  - ##### options: NavigateOptions

    - `en` set a options object for Backbone.Router.navigate().
    - `ja` Backbone.Router.navigate() に渡されるオプション

  - ##### Optional transition: string

    - `en` set a transition string
    - `ja` transition に使用する effect を指定

  - ##### Optional reverse: boolean

    - `en` set a direction string for transition. true:reverse / false:nomal
    - `ja` transition に使用する direction を指定 true:reverse/false:通常

  #### Returns void

### Static Private bindEvents

- bindEvents(): void

- - Defined in Router.ts:847

  ~english Bind events.

  #### Returns void

### Static Private canResolveRoute

- canResolveRoute(url: string): boolean

- - Defined in Router.ts:1022
  en

    Check status of Backbone.Router if they can resolve route.

  ja

    Backbone.Router が route を解決可能か判定

  #### Parameters

  - ##### url: string

    - `en` url string
    - `ja` url 文字列

  #### Returns boolean

  - `en` true: can resolve / false: can not
  - `ja` true: 解決可能 / false: 解決不可

### Static cancelSubFlow

- cancelSubFlow(transition?: string, reverse?: boolean): void

- - Defined in Router.ts:635
  en

    Cancel sub flow transaction.

  ja

    sub flow トランザクションのキャンセル

  #### Parameters

  - ##### Optional transition: string

    - `en` set a transition string
    - `ja` transition に使用する effect を指定

  - ##### Optional reverse: boolean

    - `en` set a direction string for transition. true:reverse[default] / false:nomal
    - `ja` transition に使用する direction を指定 true:reverse[既定]/false:通常

  #### Returns void

### Static Private changePage

- changePage(path: string): void

- - Defined in Router.ts:1129
  en

    This function just calls jQuery Mobile's navigation method.

  ja

    jQuery Mobile によるページ遷移指定

  #### Parameters

  - ##### path: string

    - `en` to page path
    - `ja` 遷移先パスを指定

  #### Returns void

### Static commitSubFlow

- commitSubFlow(transition?: string, reverse?: boolean): void

- - Defined in Router.ts:616
  en

    Commit sub flow transaction.

  ja

    sub flow トランザクションの終了

  #### Parameters

  - ##### Optional transition: string

    - `en` set a transition string
    - `ja` transition に使用する effect を指定

  - ##### Optional reverse: boolean

    - `en` set a direction string for transition. true:reverse / false:nomal
    - `ja` transition に使用する direction を指定 true:reverse/false:通常

  #### Returns void

### Static Private customJqmBack

- customJqmBack(): void

- - Defined in Router.ts:827
  en

    Override: $.mobile.back().

    - fail safe processing.
      If using Backbone's Router,
      this class unuses history object of jQuery Mobile 1.4,
      and standardize as browser back button's behaviour. (jQM 1.3 comparable)
  ja

    $.mobile.back() のオーバーライド

    - [TBD] fail safe 処理
      Backbone の Router を使用している場合、
      jQuery Mobile 1.4 以降の内部の History 管理は使用せずに
      1.3 相当のブラウザの[戻る]の挙動に統一する。

  #### Returns void

### Static Private customLoadUrl

- customLoadUrl(fragment: string): boolean

- - Defined in Router.ts:806
  en

    Override: Backbone.History.loadUrl().

  ja

    Backbone.History.loadUrl() のオーバーライド

  #### Parameters

  - ##### fragment: string

  #### Returns boolean

### Static Private decideDirection

- decideDirection(path: string): void

- - Defined in Router.ts:1208
  en

    Decide direction parameter.
    It's as same as jQM internal implement. (imperfection)

  ja

    direction の判定
    jQM の内部実装と等価 (不完全)

  #### Parameters

  - ##### path: string

    - `en` to page path
    - `ja` 遷移先パスを指定

  #### Returns void

### Static Private detectAdditionalBackDistance

- detectAdditionalBackDistance(): number

- - Defined in Router.ts:1257
  en

    Return additional back distance count when back destination set. (const function)

  ja

    戻り先が指定されているとき、追加の Back 数を返す。(この関数は Router の状態を変更しない。)

  #### Returns number

  - `en` count of additiona back distance.
  - `ja`追加で Back に必要な距離.

### Static Private detectSubFlowBaseInfo

- detectSubFlowBaseInfo(): any

- - Defined in Router.ts:1416
  en

    Return destination Sub Flow information. (const function)

  ja

    Sub Flow 情報を返却 (この関数は Router の状態を変更しない。)

  #### Returns any

  - `en` sub flow info.
  - `ja` Sub Flow 情報.

### Static Private finishSubFlow

- finishSubFlow(options: NavigateOptions): void

- - Defined in Router.ts:1358
  en

    End sub flow
    navigate and delete SubFlowParam from jqm history stack object.

  ja

    Sub Flow の終了
    遷移と SubFlowParam を jqm history stack から削除

  #### Parameters

  - ##### options: NavigateOptions

  #### Returns void

### Static Private followAnchor

- followAnchor(event: Event): boolean

- - Defined in Router.ts:958
  en

    Anchor processing.

  ja

    anchor 処理

  #### Parameters

  - ##### event: Event

  #### Returns boolean

### Static fromHashChanged

- fromHashChanged(): boolean

- - Defined in Router.ts:665
  en

    Check from hash changed navigation.

  ja

    Hash 変更によって Navigate が起こったか判定. "pagechange" が発生するまでに判定可能

  #### Returns boolean

### Static getQueryParameters

- getQueryParameters(): any

- - Defined in Router.ts:570
  en

    Get query parameters.
    It can be accessed during "pagebeforecreate" to "pagechange".

  ja

    query parameter に指定された引数の取得
    ページ遷移中にのみアクセス可能 (pagebeforecreate ～ pagechange)

  #### Returns any

### Static Private initFirstPageIfNeeded

- initFirstPageIfNeeded(url: string): boolean

- - Defined in Router.ts:910
  en

    Check if $.mobile.initializePage() is called or not, and call it if needed.

  ja

    $.mobile.initializePage() が呼ばれているか確認し、必要なら初期化する。

  #### Parameters

  - ##### url: string

    - `en` set a navigate URL. (relative path / absolute path / fragment)
    - `ja` 遷移 URL を指定 (相対パス/絶対パス/フラグメント)

  #### Returns boolean

### Static Private isBackButtonClicked

- isBackButtonClicked(event: Event): boolean

- - Defined in Router.ts:1045
  en

    Check back button clicked.

  ja

    Back Button がクリックされたか判定

  #### Parameters

  - ##### event: Event

  #### Returns boolean

### Static isInSubFlow

- isInSubFlow(): boolean

- - Defined in Router.ts:653
  en

    Check in sub flow.

  ja

    sub flow 内であるか判定

  #### Returns boolean

### Static Private isJustBeforeVclicked

- isJustBeforeVclicked(): boolean

- - Defined in Router.ts:1035
  en

    Check "vclick" fired at the last minute.

  ja

    直前に vclick が呼ばれたか判定

  #### Returns boolean

### Static isRouting

- isRouting(): boolean

- - Defined in Router.ts:346
  en

    Check routing status.

  ja

    ルーティングを開始しているか判定

  #### Returns boolean

  - `en` true: routing / false: not routing
  - `en` true: 有効 / false: 無効

### Static Private isTopPage

- isTopPage(): boolean

- - Defined in Router.ts:930
  en

    Check for current page is top.

  ja

    現在のページが top に指定されているか判定

  #### Returns boolean

  - `en` true: top page / false: not top page
  - `ja` true: top 指定 / false: top ではない

### Static navigate

- navigate(url: string, transition?: string, reverse?: boolean, options?: NavigateOptions): void

- - Defined in Router.ts:367
  en

    URL navigation.

  ja

    URL遷移

  #### Parameters

  - ##### url: string

    - `en` set a navigate URL. (relative path / absolute path / fragment)
    - `ja` 遷移 URL を指定 (相対パス/絶対パス/フラグメント)

  - ##### Optional transition: string

    - `en` set a transition string.
    - `ja` transition に使用する effect を指定

  - ##### Optional reverse: boolean

    - `en` set a direction string for transition. true:reverse / false:nomal
    - `ja` transition に使用する direction を指定 true:reverse/false:通常

  - ##### Optional options: NavigateOptions

    - `en` set a options object for Backbone.Router.navigate().
    - `ja` Backbone.Router.navigate() に渡されるオプション

  #### Returns void

### Static navigateFromTop

- navigateFromTop(to?: string | PageStack | PageStack[], transition?: string, reverse?: boolean, options?: NavigateOptions): void

- - Defined in Router.ts:461
  en

    Navigate from Top Page.
    If SubFlow set up, the param is cleared.

  ja

    トップページからの画面遷移
    SubFlow が指定されていた場合はクリアされる

  #### Parameters

  - ##### Optional to: string | PageStack | PageStack[]

    - `en` set a navigate URL or PageStackOptions object or array.
    - `ja` 遷移 URL / PageStackOptions オブジェクト/配列

  - ##### Optional transition: string

    - `en` set a transition string
    - `ja` transition に使用する effect を指定

  - ##### Optional reverse: boolean

    - `en` set a direction string for transition. true:reverse / false:nomal
    - `ja` transition に使用する direction を指定 true:reverse/false:通常

  - ##### Optional options: NavigateOptions

    - `en` set a options object for Backbone.Router.navigate().
    - `ja` Backbone.Router.navigate() に渡されるオプション

  #### Returns void

### Static Private needDefaultOperation

- needDefaultOperation(url: string): boolean

- - Defined in Router.ts:1001
  en

    Check default processing needed.

  ja

    既定の処理を行わせるか判定

  #### Parameters

  - ##### url: string

    - `en` url string
    - `ja` url 文字列

  #### Returns boolean

  - `en` true: need default processing / false: need not
  - `ja` true: 既定の処理が必要 / false: 不要

### Static Private onAnchorVclicked

- onAnchorVclicked(event: Event): boolean

- - Defined in Router.ts:946
  en

    Called when anchor received "vclick" event.

  ja

    anchor が vclick されたときにコールされる

  #### Parameters

  - ##### event: Event

  #### Returns boolean

  - `en` true: need default processing / false: need custom processing
  - `ja` true: default 処理 / false: カスタム処理

### Static Private onRouteFailed

- onRouteFailed(fragment: string): void

- - Defined in Router.ts:1091
  en

    It called on failed routing triggered by changing hash.

  ja

    ハッシュ値が変更され、ルーティングが失敗したときにコールされる

  #### Parameters

  - ##### fragment: string

  #### Returns void

### Static Private onRouteSucceeded

- onRouteSucceeded(name: string, ...args: any[]): void

- - Defined in Router.ts:1064
  en

    It called on succeed routing triggered by changing hash.

  ja

    ハッシュ値が変更され、ルーティングが成功したときにコールされる

  #### Parameters

  - ##### name: string

    - `en` name of route
    - `ja` route 名。page の値が渡る。

  - ##### Rest ...args: any[]

    - `en` array of paramter
    - `ja` パラメータ配列。

  #### Returns void

### Static Private pathToJqmDataUrl

- pathToJqmDataUrl(path: string): string

- - Defined in Router.ts:1455
  en

    Convert path to jQM dataUrl.

  ja

    パスを jQM dataUrl に変換

  #### Parameters

  - ##### path: string

  #### Returns string

  jQM data url.

### Static Private pushContext

- pushContext(name: string, context: RouteContext): boolean

- - Defined in Router.ts:893
  en

    Store the RootContext.

  ja

    RootContext の格納

  #### Parameters

  - ##### name: string

    - `en` name of route
    - `ja` route 名

  - ##### context: RouteContext

    - `en` context object
    - `ja` context オブジェクト

  #### Returns boolean

  - `en` true: succeeded / false: already registered
  - `ja` true: 登録成功 / false: すでに登録されている

### Static register

- register(route: string, page: string, top?: boolean, callback?: function): Router

- - Defined in Router.ts:276
  en

    Register to Router.

  ja

    Router への登録.

  #### Parameters

  - ##### route: string

    - `en` route string, it can be regular expression.
    - `ja` ルーティング文字列 / 正規表現

  - ##### page: string

    - `en` page template path.
    - `ja` page template path. イベント名にも使用される

  - ##### Default value top: boolean = false

    - `en` set "true" if application's top view. (optional)
    - `ja` Top ページの場合は true を指定 (任意)

  - ##### Optional callback: function

    - `en` callback for custom page transition. If you don't want to trigger jQM.changePage(), return true by this callback. (optional)
    - `ja` 遷移を自身で管理する場合に指定し、戻り値を true に設定すると changePage をコールしない (任意)
    - - (...args: any[]): boolean

      - #### Parameters

        - ##### Rest ...args: any[]

        #### Returns boolean

  #### Returns Router

  - `en` Router instance.
  - `ja` インスタンス。ただし method chain をしたい場合は、any cast が必要。

### Static registerPageStack

- registerPageStack(pageStack: PageStack, withNavigate?: boolean, options?: NavigateOptions): boolean
- registerPageStack(pageStack: PageStack[], withNavigate?: boolean, options?: NavigateOptions): boolean

- - Defined in Router.ts:690
  en

    Register page stack.
    Set registered route(s) to add to page stack on the basis of the present stack position.

  ja

    ページスタック登録
    登録済みの route を指定して、現在の位置を基点にページスタックに登録

  #### Parameters

  - ##### pageStack: PageStack

    - `en` PageStackOptions object or array.
    - `ja` PageStackOptions オブジェクト/配列

  - ##### Optional withNavigate: boolean

    - `en` true: with navigate final stack. (default) / false: not navigate.
    - `ja` true: 最後のスタックに対してページ遷移する. (default) / false: ページ遷移しない.

  - ##### Optional options: NavigateOptions

    - `en` set a options object for Backbone.Router.navigate().
    - `ja` Backbone.Router.navigate() に渡されるオプション

  #### Returns boolean

  - `en` true: succeeded / false: failed
  - `ja` true: 成功 / false: 失敗。
- - Defined in Router.ts:691

  #### Parameters

  - ##### pageStack: PageStack[]

  - ##### Optional withNavigate: boolean

  - ##### Optional options: NavigateOptions

  #### Returns boolean

### Static start

- start(options?: RouterOptions): void

- - Defined in Router.ts:312
  en

    Start listening hash change.
    It should be called after register().

  ja

    履歴監視の開始
    登録完了後にクライアントが呼ぶことでページ遷移が開始される。

  #### Parameters

  - ##### Optional options: RouterOptions

    - `en` options object for Backbone.History.
    - `ja` Backbone.History にわたるオプション

  #### Returns void

### Static Private startSubFlow

- startSubFlow(subFlowParam: SubFlowParam): void

- - Defined in Router.ts:1316
  en

    Start sub flow.
    Attach SubFlowParam to jqm history stack object.

  ja

    Sub Flow の開始
    SubFlowParam を jqm history stack にアタッチ

  #### Parameters

  - ##### subFlowParam: SubFlowParam

    - `en` Sub Flow parameter.
    - `ja` Sub Flow パラメータ

  #### Returns void

### Static stop

- stop(): boolean

- - Defined in Router.ts:332
  en

    Stop listening hash change.

  ja

    履歴監視の停止

  #### Returns boolean

  - `en` previous status.
  - `ja` 以前の開始状態を返却

### Static Private treatUrlHistory

- treatUrlHistory(): void

- - Defined in Router.ts:1469
  en

    Update jQM urlHistory by window.history object.
    To be natural browsing history behavior, application needs to update jQM urlHistory
    when clicking back or next button of browser. (imperfection for decideDirection())

  ja

    ブラウザの履歴に基づき jQM urlHistory を更新
    [戻る]/[進む]が押下された後、ページ遷移されるとき、jQM urlHistory を更新する。(decideDirection() により不完全)

  #### Returns void

## Object literals

### Static Private s_defaultInitOptions

s_defaultInitOptions: object

- Defined in Router.ts:191

### anchorVclick

anchorVclick: boolean = true

- Defined in Router.ts:192

### firstPageTransition

firstPageTransition: boolean = false

- Defined in Router.ts:193

### Static Private s_defaultNavigateOptions

s_defaultNavigateOptions: object

- Defined in Router.ts:196

### intent

intent: null = null

- Defined in Router.ts:199

### replace

replace: boolean = false

- Defined in Router.ts:198

### trigger

trigger: boolean = true

- Defined in Router.ts:197

Generated using TypeDoc