ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
jQuery .show() とは
.show() は非表示になっている要素を表示状態に戻す jQuery メソッドです。直前に .hide() や CSS で display:none されていた要素の display プロパティを元の値(block / inline / flex など)に復元します。
基本構文
<button id="btn">表示するボタン</button>
<p id="msg" style="display:none">非表示のメッセージ</p>// 即座に表示
$("#btn").click(function () {
$("#msg").show();
});
速度を指定してフェードイン
第 1 引数にミリ秒またはキーワードを渡すとアニメーションで表示されます。
// 400ms かけてフェードイン + 拡大
$("#msg").show(400);
// キーワードでも指定可能 (slow=600, normal=400, fast=200)
$("#msg").show("slow");
// コールバック: 表示完了後に実行
$("#msg").show(400, function () {
console.log("表示完了!");
$(this).addClass("visible");
});
| 呼び出し | 挙動 |
|---|---|
.show() | 即座に表示(アニメーションなし) |
.show(400) | 400ms かけて opacity + 縦横同時に拡大 |
.show("slow") | 600ms かけてアニメーション |
.show(400, cb) | 400ms 後にコールバック実行 |
.show({duration: 400, easing: "swing"}) | オブジェクト形式の詳細指定 |
類似メソッドとの違い
| メソッド | 動き | 用途 |
|---|---|---|
.show() | display を元の値に戻す | 非表示要素を表示 |
.hide() | display:none をセット | 要素を非表示 |
.toggle() | 表示 / 非表示を切替 | クリックで開閉 |
.fadeIn() | opacity だけアニメーション | シンプルなフェード |
.slideDown() | 高さをアニメーション | アコーディオン |
display プロパティの自動復元
.show() の賢いところは「元の display 値を覚えている」こと。div なら block、span なら inline、li なら list-item に戻ります。
// CSS で display:flex; に指定した要素を hide → show
$(".flex-container").hide(); // display:none
$(".flex-container").show(); // display:flex に戻る
!important の罠
CSS で display:none !important されていると、jQuery の .show() では上書きできません(インラインスタイルは !important に負ける)。
/* これが指定されていると .show() は効かない */
.hidden {
display: none !important;
}// NG
$(".hidden").show(); // 表示されない
// OK: クラスを切り替える
$(".hidden").removeClass("hidden");
// または addClass / removeClass で表示制御
$("#msg").addClass("active");
visibility:hidden との違い
jQuery の .show() / .hide() はdisplay プロパティを操作します。visibility:hidden(場所は確保するが見えない状態)は操作しません。
| 状態 | レイアウト | 表示 | クリック |
|---|---|---|---|
display:none | なし | × | × |
visibility:hidden | 残る | × | × |
opacity:0 | 残る | × | ○ (クリック可) |
FAQ
Q: $(...).show() が効かないことがある
A: 親要素が非表示、CSS の !important 付き display:none、または要素が DOM に存在しない(追加前にセレクタを実行)可能性。Chrome DevTools の Computed パネルで実際の display を確認。
Q: モダン JS(jQuery なし)でやるなら?
A: document.getElementById("msg").style.display = "" でインライン値をクリア、または classList.remove("hidden") でクラス切替。
Q: .show() のアニメーションは GPU 加速される?
A: .show(400) は width / height / opacity を同時にアニメーションするため、合成レイヤーが作られる場合がある。重い場合は CSS transition + クラス切替の方が滑らか。
実践例: アコーディオン開閉
クリックでパネルを開閉する典型例。slideDown() / slideUp() も併用するとより滑らかに。
<div class="accordion">
<h3 class="acc-header">セクション1</h3>
<div class="acc-body" style="display:none">中身その1</div>
<h3 class="acc-header">セクション2</h3>
<div class="acc-body" style="display:none">中身その2</div>
</div>$(".acc-header").click(function () {
var $body = $(this).next(".acc-body");
// 開閉切り替え(slideToggle が show/hide の高さ版)
$body.slideToggle(300);
$(this).toggleClass("open");
});
パフォーマンス上の注意
.show() の速度指定アニメーションは jQuery が内部で setInterval で毎フレーム描画するため、対象要素が多いとカクつきます。大量要素を同時表示する場合は CSS transition に置き換える、または requestAnimationFrame 系の軽量ライブラリ(GSAP 等)を検討。
モダン JS への置き換え
jQuery を撤去して Vanilla JS に置き換えるなら以下のパターン。
// jQuery: $("#msg").show();
document.getElementById("msg").style.display = "";
// jQuery: $(".target").hide();
document.querySelectorAll(".target").forEach(el => el.style.display = "none");
// jQuery: $("#msg").toggle();
const el = document.getElementById("msg");
el.style.display = (el.style.display === "none") ? "" : "none";
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子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
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 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
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・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
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?