ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
jQuery DOM 操作の基本
jQuery の最も基本的な使い方は「セレクタで要素を取得し、メソッドで操作する」という流れです:
// 基本パターン
$(selector).method();
// 例
$('#title').text('新しいタイトル');
$('.btn').addClass('active');
$('input[name="email"]').val('test@example.com');
HTML / テキスト / 値の取得・設定
| メソッド | 取得 | 設定 | 備考 |
|---|---|---|---|
.html() | $el.html() | $el.html("<b>X</b>") | innerHTML 相当。XSS 注意 |
.text() | $el.text() | $el.text("X<Y") | textContent 相当。安全 |
.val() | $input.val() | $input.val("abc") | input / select / textarea のみ |
// 取得
const title = $('#title').text(); // "Hello"
const html = $('#box').html(); // "<b>X</b>"
const value = $('input[name=email]').val(); // "abc@example.com"
// 設定
$('#title').text('新タイトル');
$('#box').html('<i>イタリック</i>');
$('input[name=email]').val('new@example.com');
// セレクトボックス
$('#country').val('JP'); // value=JP の option を選択
$('#country').val(['JP', 'US']); // multiple select
属性操作: attr / prop / data
// attr: HTML 属性 (文字列で扱う)
$('img').attr('src'); // 取得
$('img').attr('src', '/img/new.png'); // 設定
$('a').attr({ href: '/x', target: '_blank' });
$('img').removeAttr('alt'); // 削除
// prop: DOM プロパティ (boolean / 状態系)
$('#agree').prop('checked'); // true / false
$('#agree').prop('checked', true); // チェックを入れる
$('input').prop('disabled', true);
$('#opt-jp').prop('selected', true);
// data: data-* 属性 (キャッシュされた値)
$('#box').data('user-id'); // <div data-user-id="123"> → 123
$('#box').data('userId', 456); // ※ HTML 属性は更新されない
attr と prop の使い分け: チェックボックス / disabled / selected の状態は prop。href / src / class のような文字列値は attr。
CSS 操作
// 取得
$('#box').css('color'); // "rgb(0, 0, 0)"
$('#box').css('font-size'); // "16px"
// 設定 (個別)
$('#box').css('color', 'red');
$('#box').css('width', '300px');
// 設定 (オブジェクト)
$('#box').css({
color: 'red',
backgroundColor: '#fffbea', // キャメルケース可
'font-size': '20px', // ケバブケースも可 (クォート要)
border: '1px solid #f4c430'
});
// 関数で動的に
$('div').css('width', function(i, oldWidth) {
return parseInt(oldWidth) + 10 + 'px';
});
クラス操作
$('#box').addClass('active');
$('#box').addClass('active highlighted'); // 複数
$('#box').removeClass('active');
$('#box').removeClass(); // 全削除
$('#box').toggleClass('active'); // あれば消し、なければ付ける
$('#box').toggleClass('active', isOn); // 第2引数で強制
$('#box').hasClass('active'); // true / false
表示・非表示・アニメーション
// 即座
$('#box').show();
$('#box').hide();
$('#box').toggle();
// 時間指定
$('#box').show(400); // 400ms
$('#box').hide('slow'); // 600ms
$('#box').toggle(200);
// フェード
$('#box').fadeIn(300);
$('#box').fadeOut(300);
$('#box').fadeToggle(300);
$('#box').fadeTo(300, 0.5); // 透明度 0.5
// スライド
$('#box').slideDown(300);
$('#box').slideUp(300);
$('#box').slideToggle(300);
// 汎用アニメーション
$('#box').animate({
width: '300px',
opacity: 0.5,
marginLeft: '+=50px'
}, 500, function() {
console.log('完了');
});
// アニメーション停止
$('#box').stop();
要素の挿入・削除
// 子要素を追加
$('#list').append('<li>新規</li>'); // 末尾に追加
$('#list').prepend('<li>先頭</li>'); // 先頭に追加
// 兄弟として追加
$('#item').after('<p>あと</p>');
$('#item').before('<p>まえ</p>');
// 反対方向 (引数と主語が逆)
$('<li>新規</li>').appendTo('#list');
$('<p>後</p>').insertAfter('#item');
// 置換
$('#old').replaceWith('<div id="new">新</div>');
// 削除
$('#item').remove(); // 要素ごと削除
$('#item').empty(); // 中身だけ削除
$('#item').detach(); // 削除 (イベント保持)
DOM 走査 (Traversing)
$('#list').find('li'); // 子孫から li
$('#list').children(); // 直接の子のみ
$('#item').parent(); // 直接の親
$('#item').parents('.container'); // 祖先 (一致するもの全部)
$('#item').closest('.container'); // 最も近い祖先 (1つ)
$('#item').siblings(); // 兄弟全部
$('#item').siblings('.active'); // 兄弟のうち .active
$('#item').next(); // すぐ次の兄弟
$('#item').nextAll(); // それ以降の兄弟全部
$('#item').prev();
$('#list li').first();
$('#list li').last();
$('#list li').eq(2); // 0-indexed 3番目
each ループ
$('li').each(function(index, el) {
console.log(index, $(el).text());
});
// オブジェクト / 配列にも使える
$.each([1, 2, 3], function(i, v) { console.log(i, v); });
$.each({a:1, b:2}, function(k, v) { console.log(k, v); });
Vanilla JS への置換
| jQuery | Vanilla JS |
|---|---|
$("#x") | document.getElementById("x") |
$(".x") | document.querySelectorAll(".x") |
.text("...") | .textContent = "..." |
.html("...") | .innerHTML = "..." |
.addClass("a") | .classList.add("a") |
.removeClass("a") | .classList.remove("a") |
.toggleClass("a") | .classList.toggle("a") |
.css("color","red") | .style.color = "red" |
.attr("href") | .getAttribute("href") |
.append(html) | .insertAdjacentHTML("beforeend", html) |
.remove() | .remove() |
.on("click", fn) | .addEventListener("click", fn) |
FAQ
Q: .html() と .text() どちらを使うべき?
A: ユーザー入力を表示するなら .text() (XSS 安全)。サーバから来た HTML を入れるなら .html()。
Q: .attr("checked") が undefined になる
A: .prop("checked") を使う。HTML 属性の checked は初期値、現在の状態は DOM プロパティ。
Q: 新規プロジェクトで jQuery 使うべき?
A: ほぼ不要。Vanilla JS の querySelector + classList + fetch で十分。React / Vue を使うなら絶対に避ける。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?