ホームページ » コーディング » モバイルアプリケーションの設計/ jQuery Mobileの開発者向けガイド

    モバイルアプリケーションの設計/ jQuery Mobileの開発者向けガイド

    過去2〜3年の間に、モバイルWebサイトに対するブラウザとOSのサポートが飛躍的に向上しました。最も注目に値するのは、AppleのiOSとGoogleのAndroidプラットフォームです。しかし、PalmOSやBlackberryなどの他の企業はまだ混在しています。最近まで、単一のモバイルテーマをこれらすべてのプラットフォームに合わせることは非常に困難でした。.

    JavaScriptが始まりましたが、これまで真に統一されたライブラリはありませんでした。 jQuery Mobileは、jQueryのすべての優れた機能を利用し、それらをモバイルベースのWebソースに移植します。このライブラリは、アニメーション、トランジション効果、および基本的なHTML要素の自動CSSスタイルを含むフレームワークのようなものです。このガイドでは、自分のjQueryモバイルアプリを快適に設計できるようにプラットフォームを紹介したいと思います。.

    機能とOSサポート

    私が他のどのフレームワークよりもjQuery Mobileを学ぶことを提案する理由は単純さです。コードはjQueryコア上に構築されており、開発者の活発なチームがスクリプトを書いてバグを編集しています。多くの機能のうち、HTML 5のサポート、Ajaxを利用したナビゲーションリンク、そしてタッチ/スワイプイベントハンドラ.

    サポートは電話によって異なり、A-Cの3つのカテゴリの表に分けられます。 AはjQuery Mobileのフルサポートを誇る最上位層です。BはAjaxを除くすべての機能を備えていますが、Cは基本的なHTMLでほとんどJavaScriptがないHTMLです。幸いなことに、人気のあるオペレーティングシステムのほとんどは完全にサポートされています - 私は以下にいくつかの例のリストを追加しました.

    • アップルiOS 3-5
    • Android 2.1、2.2、2.3
    • Windows Phone 7
    • ブラックベリー6.0、ブラックベリー7
    • Palm WebOS 1.4-2.0、3.0

    もっと学びたいのなら、公式文書ページを読んでみてください。それはちんぷんかんぷんと書かれていないし、実際に従うことは非常に簡単に感じる。それでは、jQueryモバイルページを作成するための基本と、小さなアプリケーションを作成する方法に注目しましょう。!

    標準HTMLテンプレート

    あなたの最初のモバイルアプリを動かすためには、あなたが最初にすべきセットテンプレートがあります。これには、jQuery CDNから外部でホストされている、モバイルJSおよびCSSとともにjQueryベースコードが含まれます。下記の私の例のコードをチェックしてください.

       基本的な携帯アプリ           

    ここで唯一の外部要素は2つのメタタグであるべきです。トップ ビューポート tagはモバイルブラウザをフルズーム効果を使うように更新します。値を設定する width =デバイス幅 ページ幅を電話スクリーンの幅に正確に設定します。そして何よりもjQuery Mobileは移動するレイアウトに適応できるため、ズーム機能を無効にしません。.

    次のメタタグ X-UA互換 Internet Explorerに最新の反復でHTMLをレンダリングさせるだけです。古いブラウザ、特にモバイルは見慣れないレンダリングバグを回避しようとします.

    ボディコンテンツの構築

    これがjQuery mobileが巧妙になる可能性があるところです。各HTMLページは、必ずしもモバイルサイトの1ページにはなりません。フレームワークはHTML5のデータ属性を利用します。あなたはそれを追加することによって気軽に作成することができます。 データ- 予め。同じように data-role = "ページ" 1つのHTMLファイルで複数のdivに設定でき、複数のページを提供します。.

    その後、アンカーリンクと一意のIDを使用してこれらのページ間を移動します。この設定は、基本的なシンプルなアプリに適しています。 3〜5ページしか必要としないのであれば、それをすべて1つのファイルに格納してはどうでしょうか。あなたが多くの書かれたコンテンツを持っていない限り、その場合は時間を節約するためにPHPインクルードを使ってみる.

    紛失した場合は、以下のコード例を確認してください。.

     

    トップタイトルバー

    別のページを表示??

    ヒント:下のボタンをクリック!

    私たちに関しては

    ©フッターはこちら.

    2ページ

    いくつかの余分なコンテンツも.

    つまり、できます 戻る いつでも.

    ちょっとインデックスページからアンカーリンクを見てください。属性を追加したことに注意してください。 data-role = "ボタン" ボタンとしてリンクを設定します。しかし、代わりにデフォルトのスタイルを使うのではなく data-theme = "c". これはjQ MobileのCSSスタイルとしてデフォルトでパッケージされている5つのテーマのうちの1つ(テーマa〜e)を切り替えます。.

    私のボタンもページ全体の幅にまたがっています。この動作を取り除くには、要素をブロックからインライン表示に設定する必要があります。これを行うための属性は data-inline = "true" どのアンカーボタンにも追加できます.

    ヘッダーバーとフッターバー

    アプリケーションの上下に沿って、ヘッダーとフッターのコンテンツを追加する必要があります。このデザインスタイルは、多くの場合、AppleのモバイルApp Storeを使用して最初に普及したiOSアプリケーションに起因します。 jQ Mobileはdata-roleの属性を使ってヘッダ、フッタ、ページコンテンツを定義します。これらの分野を簡単に見てみましょう。.

    トップバーボタン

    デフォルトでは、トップバーは他のモバイルアプリと同様に2つのリンクのセットをサポートしています。 iOSはデフォルトでaを使用します。 “バック” 左側にあるボタン “オプション” または “設定” 右側に.

    設定

    2ページ

    上記のコードは、Aboutページのdivコンテナとヘッダの内容に焦点を当てています。追加のHTML属性 data-add-back-btn = "true" ページデータロールに追加された場合にのみ機能します。目的は、ブラウザの戻るボタンと同様に機能する戻るボタンを自動的に含めることです。.

    コンテンツ領域で使用したのと同じコードで、戻るボタンを手動で追加した可能性があります。しかし、私はこれが特に複数のページで設定するのにより長い時間がかかると感じます。ヘッダーセクション内のすべてのアンカーリンクは、デフォルトで左右のボタン位置に配置されます。を使って class = "ui-btn-right" これは私の設定ボタンを再配置したので、戻るボタンのための空きスペースがある。また、私はそれにいくつかの余分なスパンクを与えるために二次テーマスタイルを使用しています!

    フッターナビゲーション

    フッター領域は、最初はあまり役に立ちません。それはあなたが著作権のものともっと重要なリンクを保存することができる場所です、しかしこれはあなたのコンテンツ領域の下部に同様に容易に追加されることができます。だからフッターを使うのはいいことだ?

    私が見た中で最も良い例は、タブリンクがページナビゲーションを制御するために現れるナビゲーションシステムとしてフッタースペースを利用することです。フルスクリーン効果の選択、アイコンの追加、配置の調整、その他いくつかの属性を選択できるオプションはたくさんあります。しかし、これがどのように機能するかを理解するために、3つのボタンを持つ単純なフッターナビゲーションを作成しましょう。.

    • ライブデモをプレビューする
     

    だからここにaboutページセクションのためのいくつかのフッターコードがあります. data-role = "navbar" UL要素自体ではなく、番号なしリストを含むコンテナ要素に追加する必要があります。リスト内の各リンクはタブバーとして扱われ、リンクの総数に基づいて均等に分割されます。の追加クラス ui-body-b 利用可能ないくつかのスタイルを切り替えると、美的効果が追加されるだけです。.

    あなたが最初のボタンに気づいたら私は属性を持っています データ方向= "reverse". 以前のように戻るボタンの設定を使用してホームページに戻ることができたとしても、代わりに次のページIDを使用しました。 #index. デフォルトでは、アプリウィンドウは右側に移動します。アニメーションが後方に移動することが予想されるため、かなり粘着性があります。時間があれば、これらのアニメ化された効果をもっと使って遊ぶことができます。 jQueryのドキュメントのtransition infoページをチェックしてください。.

    Ajaxと動的ページ

    最初のセグメントでは、jQueryを使用してモバイルアプリを構築するための重要なポイントが明らかになりました。しかし、私は外部のページからデータをロードする新しいアプリを始めたいと思います。これを達成するために非常に単純なPHPスクリプトを使用します。 $ _REQUEST [] それに応じて可変の小さなドリブルショットを表示します。以下のスクリーンショットは、私たちが何を構築しようとしているのかのアイデアをあなたに与えるでしょう.

    まず、index.htmlページをデフォルトのテンプレートに設定します。このホーム画面では、リストビュー設定を使用して各リンクを順番に表示します。これは、コンテンツエリアで data-role = "listview" リストコンテナの属性。以前と同じヘッダを切り取って、以下の新しいインデックスページからすべてのコードを追加しました。.

     

    2011年10月ショット

    www.dribbble.com

    私のリストビューの各アンカーリンクは同じファイル - index.phpを指しています。しかし、パラメータを渡しています おとなしい リクエスト変数として。 image.phpファイルでIDを取得し、それを4つのプリセット値に対してテストします。一致するものがあれば、一致する画像のURLとタイトルを使用します。それ以外の場合は、デフォルトのドリブルショットを表示するだけです。.

    イメージローダスクリプト

    image.phpスクリプトにはまだコードに追加されたデフォルトのjQueryモバイルテンプレートがあります。これは実際には非常によく似たヘッダーとフッターを共有しています。ただし、バックリンク属性が追加されている点が異なります。 data-add-back-btn = "true". このボタンは、最初にindex.htmlから来た場合にのみ表示されます。 image.phpを直接ロードしてみてください。何も表示されません。 “バック” に移動する.

    私のPHPロジックを最初に調べることで、コードをもう少し理解することができると思います。私たちは スイッチ / 場合 4つの異なるIDをチェックし、ヘッダーのタイトル、画像のURL、オリジナルのアーティストのソースリンクを提供する方法.

     

    すべてはかなり簡単に思えます - 初心者のPHP開発者でも従うことができるはずです!そして、理解していないのであれば、jQueryコードにとって重要ではないので、心配しないでください。ここで切り替えて、この新しいページ内で作成したテンプレートを見てください。上記のPHPブロック全体の後に、すべてのHTMLコードが追加されています。のIDを使用しました “画像” コンテナのために、さらに新しい写真ごとに変わるようにヘッダを設定する.

    www.dribbble.com

    あなたはおそらくこのデモがどれほど単純であるかを見ることができます。しかし、全体の目的はjQuery mobileのスケーラビリティを実証することです。 PHPを簡単に組み合わせに追加することができ、ほんの数時間の開発で本当にすっきりしたアプリを作り出すことができます。.

    リストサムネイルを使用したファンシーデザイン

    私たちが実装できる最後に追加された効果の1つは、リスティングページを盛り上げるためのサムネイルの使用です。また、アートワークのタイトルとアーティストの名前の両方を表示するために、テキストを見出しと説明のボックスに分割します。.

    Photoshopを起動して80×80ピクセルのドキュメントを作成する。各画像をすばやくサイズ変更して、それぞれの画像に合わせてサムネイルを保存します。それから、リストビューアイテムを更新するために、さらにいくつかの要素を含める必要があります。.

    下のコードと私のデモ例をチェックして、私が何を意味するのかを確かめてください。.

    [ライブデモをプレビューする]

     

    のクラス ui-li-heading そして ui-li-desc デフォルトではjQuery Mobileスタイルシートに追加されます。これはimageクラスに似ています ui-li-thumb これは、画像の高さに応じて各リストビューバーのサイズを自動的に変更します。これで、ここから、アニメーション、ページ効果、スタイルシートなどを使って、フロントエンドでより多くのものを構築できます。.

    あるいは、新しい画像をアップロードして自動的にサムネイルをトリミングしてリストに含めるようにバックエンドシステムを構築することもできます。 jQuery Mobileにはそれほど柔軟性があるので、JavaScriptライブラリとしてラベルを付けることはほとんど不可能です。それはより速くてスケーラブルなモバイルアプリケーションを構築するためのHTML5 / CSS / jQueryフレームワーク全体です。.

    結論

    この記事を書いている時点で、jQuery Mobileチームは正式にコードライブラリのRC1.0を発表しました。これは、すべてではないにしても大部分の主要なバグ修正が潰され、現在テスターが完全なリリースに向けて準備を進めていることを意味します。このため、あなたはウェブ上でたくさんの情報を見つけることができません。.

    しかし、月が進むにつれて、Web開発者は確実にこの傾向を取り戻すでしょう。スマートフォンの大幅な増加に伴い、モバイルアプリケーション、さらにはモバイルWebレイアウトも人気が高まっています。 Web開発者は、Android / iOSアプリを構築するための完全なプログラミング言語を学ぶ時間がありません。そのため、jQuery Mobileは、モバイル業界のソフトウェアの大部分をサポートするスリムな選択肢であり、活発な開発者コミュニティと共に日々成長を続けています。.