jQuery UIを使ってダイアログ表示を実装する方法
サービスの解約や何かを削除する際、ユーザーに対して「本当に〇〇してもよいですか?」というようなダイアログが表示されることがあります。誤操作を防ぐためにも役立つダイアログですが、実はjQuery UIで簡単に実装することができるのです。今回は、jQuery UIを使ってダイアログ表示を実装する方法を紹介していきたいと思います。
- システム
エンジニア - 確かに、ダイアログ表示がなければ「間違って登録解除しちゃった……」ということもあり得そうですよね。
- プロジェクト
リーダー - そうですね。ちなみに、似ているもので「ポップアップ」もありますが、一応ダイアログとは区別されているので頭の片隅に置いておいてください。
-
- ・ダイアログ
ユーザーが何か操作をしている過程で開かれる画面。ユーザーに入力や「はい」「いいえ」などの選択を求める。
-
- ・ポップアップ
Webサイトなどでポンっと表示される小画面。ユーザーに何か操作を求めるのではなく、キャンペーンや広告などユーザーに見てほしい情報を表示することが多い。
では、さっそくダイアログ表示を実装していきましょう。
シンプルなダイアログ表示の作成
はじめに、シンプルなダイアログ表示を作成してみましょう。次のように記述していきます。
モーダルメッセージ
“ダウンロードが完了しました”などのメッセージを表示するダイアログです。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>modal msg</title>
<!-- jQuery UIを読み込む -->
<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.12.4.js"></script>
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<!-- ダイアログ表示の実装 -->
<script>
$( function() {
$( "#dialog-message" ).dialog({
modal: true,
buttons: {
"OK": function() {
$( this ).dialog( "close" );
}
}
});
} );
</script>
</head>
<body>
<div id="dialog-message" title="タイトル">
<p>
<span class="ui-icon ui-icon-circle-check" style="float:left; margin:0 7px 50px 0;"></span>
ここに内容を書く
</p>
</div>
</body>
</html>
|
実行結果
モーダル確認ダイアログ
“本当に削除しますか?”などの確認を行うダイアログです。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>modal confirm</title>
<!-- jQuery UIを読み込む -->
<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.12.4.js"></script>
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<!-- ダイアログ表示の実装 -->
<script>
$(function() {
$( "#dialog-confirm" ).dialog({
modal: true,
buttons: {
"はい": function() {
$( this ).dialog( "close" );
},
"いいえ": function() {
$( this ).dialog( "close" );
}
}
});
});
</script>
</head>
<body>
<div id="dialog-confirm" title="タイトル">
<p>
<span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
ここに内容を書く
</p>
</div>
</body>
</html>
|
実行結果
それぞれきちんとダイアログが表示されています。
とはいえ、何だか少し味気ないと感じた方もいらっしゃるかと思います。ということで、次項ではダイアログ表示のデザインをカスタマイズしていきましょう。
ダイアログ表示のカスタマイズ
jQuery UIでは「.ui-dialog-titlebar」、「.ui-dialog-content」などのクラスがあらかじめ用意されています。もちろん自身でクラスを追加することもできますが、ここでは用意されているクラスを使ってデザインを変更していきます。
色を変更する
先ほどのソースコードの中に(どちらでも可)以下のコードを追記していきます。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<!-- ダイアログのデザイン -->
<style>
/* ダイアログのタイトル */
.ui-dialog-titlebar {
color: #ffffff;
background: green;
}
/* ダイアログの内容 */
.ui-dialog-content {
color: orange;
}
</style>
|
では、ブラウザでどのように表示されているか見てみましょう。
このように、簡単に色を変えることができました。
テーマを変更する
今回はjQuery UIのクラス要素を取得してCSSで色を変えましたが、jQuery UIが提供しているテーマを変えることでも十分カスタマイズすることができます。
変えるコードはこちら。※ヘッダー内5行目
5
|
<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
|
「base」の箇所を「ul-lightness」や「redmont」に変えるだけで、一度にデザインを変更させることができます。詳細は下記URLをご参照ください。
https://jqueryui.com/themeroller/
※画面左側の黒いボックス(ThemeRoller)の[Gallary]タブをクリック。
ちなみに以下は「start」に変更した際のデザインです。
- システム
エンジニア - jQuery UIでこんな簡単にダイアログ表示が実装できるんですね。
- プロジェクト
リーダー - jQueryはプログラミングやデザインの知識が少ない人でも比較的少ない時間で実装できるんですよ。
jQuery UIでオリジナルのダイアログを表示しよう
今回は、jQuery UIを使ってダイアログ表示の実装とカスタマイズを行っていきました。jQuery UIを活用すれば、カッコいいデザインのダイアログを短い時間で実装することができます。この記事を参考に、ぜひWebサイトやWebアプリケーションなどにダイアログ表示を組み込んでみてはいかがでしょうか。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。
-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。
新着案件New Job
-
開発エンジニア/東京都品川区/【WEB面談可】/在宅ワーク
月給29万~30万円東京都品川区(大崎駅) -
遠隔テストサービス機能改修/JavaScript/東京都港区/【WEB面談可】/テレワーク
月給45万~60万円東京都港区(六本木駅) -
病院内システムの不具合対応、保守/東京都豊島区/【WEB面談可】/テレワーク
月給30万~30万円東京都豊島区(池袋駅) -
開発/JavaScript/東京都豊島区/【WEB面談可】/テレワーク
月給50万~50万円東京都豊島区(大塚駅) -
債権債務システム追加開発/東京都文京区/【WEB面談可】/在宅勤務
月給62万~67万円東京都文京区(後楽園駅) -
PMO/東京都豊島区/【WEB面談可】/在宅勤務
月給55万~55万円東京都豊島区(池袋駅)