-
ID:a6AYVj さんの質問

js(or jquery)に関して質問です。例えばナビゲーションメニューで「お問い合わせ」をクリックするとモーダルウィンドウが表示されるようなサイトの場合なのですが、モーダルウィンドウを表示させるためのHTMLソースはどのように準備するのがベストプラクティスなのでしょうか?ひとまず、自分でいくつか方法を考えてみました。
.
(1)最初からHTMLの中にモーダルウィンドウのHTMLソースを入れておき、display:noneで待機させておく。
.
(2)「お問い合わせ」がクリックされたタイミングで、js側でHTMLを文字列から生成して表示させる。
.
(3)同じサーバー上にお問い合わせモーダルウィンドウ用のHTMLが書かれたテキストファイルを置いておき、それを「お問い合わせ」がクリックされたタイミングでjs側で読み込みHTMLを生成し表示させる。
.
(4)DBにモーダルウィンドウ用のHTMLを入れておき、(3)と同じような容量で表示させる。
.
(5)テンプレートエンジンを使う(フロント側のテンプレートエンジン未経験で全くこの辺の理解がないです。)
.
(1)はそのページ特有のコンテンツでない場合は好ましくない方法だと思うので違う気がします。(4)はこのくらいの用途だと大げさな気がします。
.
(2)はHTMLの長い文字列をjsファイル内に書くのが好きではないので、個人的にあまり気が進みません。(短いものであればアリだと思っています)
.
(3)か(5)が良いのかなと個人的に思っているのですが、5. のテンプレートエンジンを使うというのは、この用途に合っているのでしょうか?

経験豊富な本業の皆様、ご教授頂けると嬉しいです!

みんなの回答 1 件

ID:EGOl7J さんの回答

変数とかに代入して開く条件によって中身変えるとかなら5かな。
普通に3でも問題ないと思う。

ID:a6AYVj

ありがとうございます!静的コンテンツを表示させるのであれば3で、動的コンテンツを表示させるのであれば5という切り分け方で合ってそうですかね?

ID:EGOl7J

正直どっちでもいい。
他にテンプレートエンジン使う場所があって、共通でライブラリ等読み込んでるなら、使った方がメンテ的に楽かもしれないし、時と場合と気分による。

ID:9FOA.r

トピ主です。今回は静的コンテンツ2つ程度なのでテンプレートエンジンを使うのはおおげさですかね。でもいつかテンプレートエンジンをフロントでも使うはずなので、今慣らしで使ってみるのもありかもしれないですね!

ID:EGOl7J

入門ならunderscore.jsのテンプレート機能が使いやすいかも。
紹介記事とかも多いし。

ID:9FOA.r

underscoreも気になってたので、使ってみます!ありがとうございます!

最終更新日:2016-02-18 (1,293 views)

関連するトピックス

ページ上部に戻る