Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

jQuery Mobile のページ・マネージャおよびヘルパー・プラグイン

jQuery Mobile ページ・マネージャ・プラグインと jQuery Mobile ヘルパー・プラグインによって、jQuery Mobile フレームワークを使用できるようになります。jQuery Mobile フレームワークはモバイル・デバイス向けに設計されていますが、デスクトップ・コンピュータでも使用できます。jQuery Mobile の詳細については、http://jquerymobile.com/Opens in a new tab を参照してください。

ページ・クラスへの jQuery Mobile の追加

必要な jQuery Mobile ファイルの追加

ここにリストされているファイルは、jQuery Mobile バージョン 1.4.5 および jQuery (core) バージョン 1.10.2 に含まれています。これらのファイルがまだシステムにインストールされていない場合、jQuery Mobile は https://jquerymobile.com/download/all/Opens in a new tab で、jQuery は https://code.jquery.com/jquery/Opens in a new tab で入手できます。

これらの手順は、jQuery および jQuery Mobile ファイルが <install-dir>/csp/broker にあることを前提としています (詳細については、“ページ・クラスへのプラグインの追加” を参照)。以下のファイルを使用可能にする必要があります。

  • jquery.mobile-1.4.5.min.js

  • jquery.mobile-1.4.5.min.css

  • jquery-1.10.2.min.js

Note:

プラグインは、jQuery Mobile のバージョン 1.4.3 および 1.3.2 にも対応しています。詳細については、“古い jQuery Mobile クラス” を参照してください。

以下のファイル名文字列を、ページ・クラスの JSINCLUDES および CSSINCLUDES (または CSS3INCLUDES) パラメータに追加します。Caché では、/csp/broker がすべての相対パスのルート・ディレクトリであることを前提としています。

  • CSSINCLUDES ファイル名は以下のとおりです。

    "jquery.mobile-1.4.5.min.css"

  • JSINCLUDES ファイル名は以下のとおりです。

    "jquery-1.10.2.min.js, jquery.mobile-1.4.5.min.js"

ファイルは、パラメータにリストされる順序でロードされることに注意してください。この場合、jQuery Mobile ライブラリは jQuery ライブラリに依存するため、jQuery ライブラリが最初にリストされる必要があります。

jQuery Mobile プラグインの登録

以下の例は、jQuery Mobile ページ・マネージャとヘルパーを pageContents XData ブロックで登録する方法を示しています (詳細については、“ページ・クラスへのプラグインの追加” を参照)。

  <mojo:jQM-1.4.5-PageManager>
    <mojo:jQM-1.4.5-Helper/>
    <mojo:mojoDefaultHelper/>
  </mojo:jQM-1.4.5-PageManager>

ページ・マネージャとヘルパー要素は、どちらもオプションの属性を取ることができます (“jQuery Mobile 動画およびテーマのサポート” を参照)。

Note:

jQuery Mobile ページ・マネージャを使用するページ・クラスでは、1 つの documentView のみが pageContents XData ブロックに含まれます。

jQuery Mobile ページ・マネージャは、jQuery Mobile ヘルパー・プラグインを使用する場合に必要で、他の大半のヘルパー・プラグインと共に使用できます。いくつかの jQuery Mobile レイアウト・オブジェクトでは、既定のヘルパー・プラグインが必要です。

jQuery Mobile ヘルパーは、拡張バージョンの HTML5 要素を提供します。それを HTML5 ヘルパーと共に使用する場合は、jQuery Mobile ヘルパーが最初にリストされている必要があります。プラグイン競合は、jQuery Mobile ヘルパーを HTML5 要素を拡張する他のヘルパーと共に使用した場合にも発生する可能性があります (“プラグイン競合の検出および解決” を参照)。

その他のオプションおよび要件
  • jQuery Mobile ヘルパー・レイアウト・オブジェクト $collapsible$collapsibleset$navbar、および $listview には、既定のヘルパー・プラグインによって提供される $loop レイアウト・オブジェクトが必要です。既定のヘルパーが含まれていない場合、これらのレイアウト・オブジェクトには、予測される出力の代わりに文字列 "($loop)" が表示されます。

  • pageContents XData ブロックでは、<mojo:jQM-1.4.5-PageManager> 要素と <mojo:jQM-1.4.5-Helper/> 要素はどちらもオプションの属性を取ることができます。詳細については、この章で後述する “jQuery Mobile 動画およびテーマのサポート” を参照してください。

これらのプラグインの詳細については、"クラス・リファレンス" の %ZEN.Mojo.Plugin.jQM145PageManagerOpens in a new tab および %ZEN.Mojo.Plugin.jQM145HelperOpens in a new tab を参照してください。

古い jQuery Mobile クラス

jQuery Mobile バージョン 1.4.3 のサポートは、%ZEN.Mojo.Plugin.jQM143PageManagerOpens in a new tab および %ZEN.Mojo.Plugin.jQM143HelperOpens in a new tab プラグイン・クラスによって提供されています。使い方は、jquery.mobile-1.4.3.min.js および jquery.mobile-1.4.3.min.css が使用されている点を除き、バージョン 1.4.5 と同じです。以下の例に示す要素は、pageContents XData ブロックで使用されています。

  <mojo:jQM-1.4.3-PageManager>
    <mojo:jQM-1.4.3-Helper/>
    <mojo:mojoDefaultHelper/>
  </mojo:jQM-1.4.3-PageManager>

jQuery Mobile バージョン 1.3.2 のサポートは、%ZEN.Mojo.Plugin.jQM132PageManagerOpens in a new tab および %ZEN.Mojo.Plugin.jQM132HelperOpens in a new tab プラグイン・クラスによって提供されています。使い方は、jquery.mobile-1.3.2.min.js および jquery.mobile-1.3.2.min.css が使用されている点を除き、バージョン 1.4.5 と同じです。以下の例に示す要素は、pageContents XData ブロックで使用されています。

  <mojo:jQM-1.3.2-PageManager>
    <mojo:jQM-1.3.2-Helper/>
    <mojo:mojoDefaultHelper/>
  </mojo:jQM-1.3.2-PageManager>

Note:
非推奨の jQuery Mobile プラグイン

jQuery Mobile %ZEN.Mojo.Plugin.jQMPageManagerOpens in a new tab および %ZEN.Mojo.Plugin.jQMHelperOpens in a new tab プラグイン・クラスは、旧バージョンの Zen Mojo との下位互換性用に現在使用可能です。これらのクラスは jQuery Mobile バージョン 1.3.2 も使用します。使い方は、古いクラスは以下の要素を使用して登録される点を除き、現在の 1.3.2 プラグインと同じです。

  <mojo:jQMPageManager>
    <mojo:jQMHelper/>
    <mojo:mojoDefaultHelper/>
  </mojo:jQMPageManager>

これらの古いクラスは更新されず、今後のリリースで削除される予定です。

jQuery Mobile 動画およびテーマのサポート

pageContents XData ブロックでは、ページ・マネージャとヘルパー要素はどちらもテーマと動画に関連するオプション属性をサポートしています。以下の例では、5 つの属性すべてを使用しています。

  <mojo:jQM-1.4.5-PageManager jQueryTheme="a" jQueryAnimation="flip">
    <mojo:jQM-1.4.5-Helper jQueryHeaderTheme="a" jQueryBarTheme="d" jQueryCollapsibleTheme="c"/>
  </mojo:jQM-1.4.5-PageManager>
オプションの jQuery Mobile ページ・マネージャの属性

ページ・マネージャ要素の以下の属性を指定できます。

  • jQueryTheme

    documentView の jQuery テーマを指定します。以下に例を示します。

      <mojo:jQM-1.4.5-PageManager jQueryTheme="a">
    
  • jQueryAnimation

    ドキュメント・スタックを変更する (新しいドキュメントをスタックにプッシュする、またはドキュメントをスタックからポップする) 場合に使用するための jQuery Mobile 動画を指定します。以下に例を示します。

      <mojo:jQM-1.4.5-PageManager jQueryAnimation="flip">
    
オプションの jQuery Mobile ヘルパーの属性

ヘルパー要素の以下の属性を指定できます。

  • jQueryHeaderTheme

    ヘッダとフッタの jQuery テーマを指定します。

  • jQueryBarTheme

    グリッドとバーの jQuery テーマを指定します。

  • jQueryCollapsibleTheme

    折りたたみ可能なセットの jQuery テーマを指定します。

同じ要素内でいずれかまたはすべてのヘルパー属性を使用できます。以下に例を示します。

    <mojo:jQM-1.4.5-Helper jQueryHeaderTheme="a" jQueryBarTheme="d" jQueryCollapsibleTheme="c"/>

初期設定の後に、これらの属性を変更する必要がある場合は、changeTheme() ヘルパー・プラグイン・メソッド (“カスタム jQuery Mobile ヘルパー・プラグイン・メソッド” で後述) を使用します。

テンプレート・クラスでの jQuery Mobile の使用

jQuery Mobile レイアウト・オブジェクト

使用可能なレイアウト・オブジェクトの完全なリストについては、この章で後述する “jQuery Mobile ヘルパー・レイアウト・オブジェクト” を参照してください。

カスタム jQuery Mobile レイアウト・オブジェクト・メソッド

以下のメソッドは、すべての適切なレイアウト・オブジェクト内で使用できます。

  • $hide() — レイアウト・オブジェクトを非表示にします。

  • $refresh() — レイアウト・オブジェクトの HTML を再レンダリングします。

  • $show() — レイアウト・オブジェクトを表示します。

jQuery Mobile ヘルパー・プラグイン・メソッド

jQuery Mobile ユーティリティ・メソッドのリストについては、この章で後述する “カスタム jQuery Mobile ヘルパー・プラグイン・メソッド” を参照してください。

jQuery Mobile フレームワークへの直接アクセス

jQuery Mobile プラグインは、クライアント・メソッドが jQuery Mobile メソッドを参照するために使用できる $.mobile オブジェクトを介して jQuery Mobile フレームワークへの直接アクセスを提供します。以下に例を示します。

  $.mobile.loading('show') ;
イベント処理

jQuery Mobile プラグインには、特殊なイベント処理要件はありません。

jQuery Mobile ヘルパー・レイアウト・オブジェクト

以下のリストは、jQuery Mobile ヘルパー・プラグインで提供されるレイアウト・オプションのクイック・リファレンスとして使用することを意図しています。詳細なリファレンス情報については、プラグイン・ドキュメント・アプリケーションを使用してください (“プラグイン・ドキュメントおよびウィジェット・リファレンス・アプリケーションの使用” を参照)。

$button $controlgroup $input $navbaritem $radio-button
$checkbox $fieldset $link $pagecontent $select
$collapsible $footer $listview $panel $string
$collapsibleset $grid $listviewitem $password $text
$control $header $navbar $popup $textarea

jQuery Mobile ヘルパーは、HTML5 要素の拡張バージョンを提供するため、HTML5 要素を拡張する他のヘルパーと共に使用すると、プラグイン競合が生じる可能性があります (このドキュメン内の前述の “プラグイン競合の検出および解決” を参照)。

カスタム jQuery Mobile ヘルパー・プラグイン・メソッド

%ZEN.Mojo.Plugin.baseHelperPluginOpens in a new tab から継承されたメソッドに加えて、jQuery Mobile ヘルパー・プラグインは以下のメソッドを提供します。

  • changeTheme()

      ClientMethod changeTheme(newTheme = "c", headerTheme = "a", barTheme = "a")
      [ Language = javascript ]
    

    テーマ、ヘッダ・テーマ、およびバー・テーマが指定されると、このメソッドはこのページで使用されているテーマを更新します。以下に例を示します。

      var mainView = zen('mainView');
      mainView.getPluginByName('jQM-1.4.5-Helper').changeTheme('d','b','b');
    
    

    テーマは、最初は、pageContents XData ブロック内のヘルパー要素の属性として設定されています (この章で前述の “jQuery Mobile 動画およびテーマのサポート” を参照)。

  • openPanel()

      ClientMethod openPanel(id) [ Language = javascript ]
    

    $panel オブジェクトの ID が指定されると、このメソッドはそのパネルを表示します。以下に例を示します。

      var mainView = zen('mainView');
      getPluginByLayoutObjectType($panel).openPanel('leftPanel'); 
    
  • closePanel()

      ClientMethod closePanel(id) [ Language = javascript ]
    

    $panel オブジェクトの ID が指定されると、このメソッドはそのパネルを閉じます。

  • togglePanel()

      ClientMethod togglePanel(id) [ Language = javascript ]
    

    $panel オブジェクトの ID が指定されると、このメソッドはそのパネルの開閉を切り替えます。

  • showPopup()

      ClientMethod showPopup(key, options) [ Language = javascript ]
    

    $popup オブジェクトのキーが指定されると、このメソッドはそのオブジェクトを表示します。options 引数は、ポップアップの任意のオプションを含むオブジェクトです。以下に例を示します。

      var view = zen('mainView');
      view.getPluginByLayoutObjectType($popup').showPopup('form-popup',{x:150,y:200});
    
  • closePopup()

      ClientMethod closePopup(key) [ Language = javascript ]
    

    $popup オブジェクトのキーが指定されると、このメソッドはそのオブジェクトを閉じます。

jQuery Mobile プラグインのサンプル・コードの使用

"ウィジェット・リファレンス" では、jQuery Mobile ヘルパー・プラグインのインタラクティブ・ウィジェットのサンプルを提供します。このリファレンスには、実施例、詳細な説明、およびユーザ独自のアプリケーションに切り取って貼り付けることができるソース・コードが含まれています。

jQuery Mobile ページ・マネージャおよびヘルパー・プラグインの完全なサンプル アプリケーションをバージョンごとに使用できます。jQuery Mobile 1.4.5 バージョンの場合、Studio を開いて SAMPLES ネームスペース内の ZMdemo.JQM145 に移動します。必要に応じて、そのパッケージ内のクラスをコンパイルします。アプリケーションを実行するには、ZMdemo.JQM145.HomePage を開き、[表示] > [ウェブページ] を選択します。デバッグ・モードで実行している場合、必ずデバッグ対象 URL を csp/samples/ZMdemo.JQM145.HomePage.cls に設定してください。

その他の jQuery Mobile バージョンの場合は、同じ指示に従いますが、ZMdemo.JQM143 または ZMdemo.JQM (バージョン 1.3.2 の場合) を指定します。

これらのサンプル・アプリケーションは、jQuery Mobile ページ・マネージャおよびヘルパー・プラグインに加えて、Google MapsHTML5、および既定のヘルパー・プラグインも使用します。

FeedbackOpens in a new tab