【メモ】jQuery mobileでスマートフォンサイト制作する際の注意点
- 2011
- 12/16
スマートフォンサイトを簡単に制作できるjQuery mobileが最近twitter等で話題になっているので、早速実践してみました。導入してみて気がついた制作時の注意点がいくつかあるので、掲載しておきます。
pageタグの使い方
jQuery mobileを使って一番驚いたのがこの機能でした。
簡単に説明すると、通常のHTMLでは1ファイルが1ページを表します。ところがjQuery mobileでは、pageというタグで囲む事で一つのHTMLファイル内に複数のページ内容を掲載する事が可能です。(HTML5で登場したタグかと思ってましたが違うみたいです)
詳しくはスマートフォン向けフレームワーク注目の「jQuery Mobile」でスマホサイトを作ってみよう【基本編】 | HTML5でサイトをつくろうを参考にしてみてください。僕もこのサイトを参考に制作させてもらいました。
さて、その肝心の
例えばこんな書き方がNG
<html> <body> <page> <div data-role="header"> <p>これがヘッダー</p> </div> <div data-role="content"> <p>jQuery mobileでスマートフォンサイト制作する際の注意点</p> </div> <div data-role="footer"> <p>これがフッター</p> </div> </page> </body> </html>
1HTMLファイル内に複数ページ分の
つまり、1ページ1ファイルで記載する場合には
data-transitionの挙動誤差
jQuery mobileの長所のひとつdata-transitionですが、ページ遷移のモーションをまるでアプリのようなカッコいい感じにしてくれます。
その動きには
スライド(右から左へ) data-transition=”slide” スライド(下から) data-transition=”slideup” スライド(上から) data-transition=”slidedown” ポップアップ data-transition=”pop” フェードイン data-transition=”fade” フリップ(回転) data-transition=”flip”※ HTML5でサイトをつくろうさんより引用
などのパターンが用意されているのですが、Androidで見た場合とiphone見た場合等、ブラウザ間での動作に違いがあるようです。
(flipが一番派手な演出ですが、Android端末では動きが上手く再現できないetc…)
細かな検証は出来ていませんが、公式に配布されているcssを自分で修正した場合に若干動きがギクシャクする場合も。
現時点ではslideなどの簡単な動きにしておくのがいいかもしれません。
デザイン時の注意点
画像の使い方
ボタンデザイン等は可能な限りCSSで制作するのが良いと思います。
リキッドデザイン
スマートフォンを普段使っている人はイメージしやすいと思いますが、スマートフォンでWebサイトを見る場合、画面の向きによって表示サイズが変わってしまいます。そのため画像はあらかじめ大きなサイズにしておかないと、拡大表示時にぼやけてしまうので注意してください。
基本的に%指定でコーディングを行うのがいいんじゃないでしょうか。
Backボタンのバグ
jQuery mobileを使用する場合、
data-add-back-btn="true"
と指定する事で「トップに戻るボタン」を自動設置できます。
しかしこの指定にはバグがあるようで、この機能で設置したボタンを使わず、ブラウザの「戻る」ボタンを使用した場合に不具合がおきる事があります。また、このボタンが設置されているページでブラウザの「リロード」すると、戻るボタン自体がが表示されなくなるようです。
今のところまだ完全とは言えないような仕様に感じましたが、ごく簡単なスマートフォンサイトであれば小1時間で制作する事も出来てしまうので、まずは導入して使ってみる事をオススメします。
自分の環境では動いた!や、こんな不具合もあった!がありましたらコメントいただけますと嬉しいです。