libro
www.tuyano.com
jQuery Mobileによるスマートフォン用Webサイト作成入門

jQuery Mobileを使ってみよう! (3/5)

作成:2011-05-23 08:51
更新:2012-03-29 10:13

■jQuery Mobileを使ったWebページの基本形

では、どのように書けばjQuery MobileによるWebページを作れるのでしょうか。ごく簡単なサンプルを作って、試してみることにしましょう。

下のリスト欄に掲載したのが、サンプルページのHTMLソースコードです。これをHTMLファイルに記述し、Webサイトに公開してアクセスしてみましょう。パソコンのブラウザからでももちろんアクセスできますが、スマートフォン(iPhoneやAndroid)からアクセスしてどのように表示されるか、確認してみましょう。

画面の上には「Hello」という黒字に白文字のタイトルが表示され、その下にグレー表示されたページ内に「jQuery Mobileサンプル。」とテキストが表示されます。まぁ、スマートフォン用のWebページというほど面倒なものではなくて、ただ単にテキストを表示しているだけですが、「上にタイトルがあって下にテキスト」というスマートフォンらしい雰囲気になっているのはわかるでしょう。またページの拡大縮小を行ってもサイズは変わりません。スマートフォンで見やすいサイズを考え、それにあわせた文字サイズで表示されているのです。

では、作成したソースコードを整理してみましょう。ざっとタグの構造をチェックすると、以下のような形をしていることがわかります。
<html>
    <head>
    ……必要なヘッダーのタグ……
    ……jQuery Mobile関連のタグ……
    </head>
    
    <body>
        
        <div id="home" data-role="page">
            ……ここに表示内容を用意……
        </div>

    </body>
</html>
<head>部分でのポイントは、先にあげたjQuery Mobile関連のタグを用意する、という点だけです。他に考えるべきことは特にありません。

問題は、<body>部分です。ここでは以下のようなタグが置かれ、この中にすべての表示が造りこまれていることが分かります。それぞれのタグの役割を整理しておきましょう。
<div id="home" data-role="page">
    <div data-role="header">
        ……ヘッダー部分の表示……
    </div>
    <div data-role="content">
        ……ここに用意するコンテンツの内容……
    </div>
</div>

・pageタグ
ここでは、まず最初に<div id="home" data-role="page">というタグが用意されています。data-role="page"という属性を用意した<div>タグは、画面に表示する個々のページを示すものとして扱われます。このタグの中に表示内容を記述することで、このIDのページの表示内容を作成します。

ここでは、id="home"というようにIDが指定されていますが、これはとても重要です。IDに"home"と指定されたpageタグは、このWebページにアクセスすると最初に表示されるpageタグとなるのです。pageタグの中には、大きく整理すると3つのタグが用意されます。

・headerタグ
まずは、<div data-role="header">というタグです。このように、data-role="header"という属性を設定された<div>タグは、このページのヘッダーとして扱われます。ヘッダーというのは、サンプルページの上に黒い背景で「Hello」と表示されていた部分のことです。このように、jQuery Mobileでは、ページの一番上にヘッダーとしてページのタイトルなどを表示します。

・bodyタグ
そのページに表示する内容は、<div data-role="content">タグの中に記述されます。このdata-role="content"属性を記述されたタグが、ヘッダーの下にグレーがかった背景で表示されている部分です。ページに表示するコンテンツは、ここに用意します。

・footerタグ
ここでは使われていませんが、コンテンツの表示の下に、ヘッダー表示を用意することもできます。これは、<div data-role="footer">というタグとして用意します。このようにdata-role="footer"属性を指定されたタグは、ヘッダーと同じように、コンテンツとは違った背景とテキスト色で表示されます。

data-role="page"を指定したタグの中に、data-role="header"data-role="content"指定のタグを使ってタイトルやコンテンツの内容を書くと、それに従って画面にレイアウトされた状態で表示される。これがjQueryもボイルの基本なのです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
		"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">

	<head>
	<meta http-equiv="content-type" content="text/html;charset=utf-8" />
	<title>Sample</title>
		
	<link rel="stylesheet" 
		href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
	<script type="text/javascript" 
		src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
	<script type="text/javascript" 
		src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
	</head>
	
	<body>
		<div id="home" data-role="page">
			<div data-role="header">
				<h1>Hello</h1>
			</div>
			<div data-role="content">
				<p>jQuery Mobileサンプル。</p>
			</div>
		</div>
		
	</body>
</html>

※関連コンテンツ

「jQuery Mobileによるスマートフォン用Webサイト作成入門」に戻る