libro
www.tuyano.com
初心者のためのjQueryプログラミング入門

DOMオブジェクトの基本操作 (2/5)

作成:2010-04-04 11:13
更新:2012-05-25 11:51

■jQueryオブジェクトの不思議

この$によって取得されるjQueryオブジェクトは、非常に不思議な性格を持っています。それは、「取得する要素が1つでも複数でも、全く同じように操作できる」という点です。

●特定のタグをすべて操作する
$関数では、引数の指定の仕方によりさまざまな形で要素を特定できます。先に、IDで指定する際には、'#ID名'という形でした。この他、「タグの種類で特定する」という方法もあります。これは$の引数にタグ名をそのまま記述するだけです。

下のリストに簡単なサンプルをあげておきます。ここではテキストを記入してボタンを押すと、<div>タグの表示すべてが一斉に変わります。$関数を見ると、
$('タグ名')
このような形で記述されていることがわかるでしょう。ここでは$('div').text(値)と実行しています。これで、ページにある全<div>タグの内容が一斉に変更されてしまうのです。

●クラスで特定する
特定のものを指定したい場合には、クラスを利用するのが便利です。これは、以下のような形で$関数を呼び出します。
$('.クラス名')
クラス名の前にドット(.)をつけて記述します。例えば、下のサンプルで、<div>タグを変更している文を以下のように書き換えてみましょう。
$('div') → $('.msg')
これで、class="msg"と指定されたタグのテキストだけがまとめて変更されます。classが指定されていないものは変わりません。

●複数のIDを指定する
この他、もっと個別に指定をしたい場合には、ID名を必要なだけ列挙して指定をすることもできます。これは以下のように記します。
$('#ID名, #ID名, …… ')
操作したい要素のID名を、カンマで区切って必要なだけ並べて記述すると、それらをすべてまとめて操作することができます。例えば下の$関数部分を、
$('div') → $('#message1,#message3')
このように変更すると、message1とmessage3のIDのタグだけが変更されます。このように、$関数での引数の指定方法をしっかり覚えておくと、さまざまな要素を一括して操作できるようになります。通常ならば、複数の要素を取得し、繰り返しなどを使って順に操作しなければならないことが、わずか1行で実現できてしまうのです。jQueryの威力を実感できますね。

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

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

●プログラム・リスト●

<html>
	<head>
		<meta http-equiv="Content-Type"content="text/html; charset=UTF-8">
		<script src="jquery-1.4.2.min.js"></script>
		<script type="text/javascript">
		<!--
		function doAction(){
			var str = $('#text1').val();
			$('div').text('あなたは、"' + str + '"と書きました。');
		}
		//-->
		</script>
	</head>
	<body>
		<H1>TEST.</H1>
		<div class="msg" id="message1">テキストを入力:</div>
		<div class="msg" id="message2">テキストを入力:</div>
		<div id="message3">テキストを入力:</div>
		<input type="text" id="text1">
		<input type="button" onclick="doAction();" value="Click">
	</body>
</html>

※関連コンテンツ

「初心者のためのjQueryプログラミング入門」に戻る