私は完全に空白のページ(html、head、body以外の要素はありません)から始め、jQueryを使用してページを構築します。ページの内容は、AJAXリクエストからのJSON形式になります。 JSONのコンテンツにはHTMLはありません。コンテンツを含むHTMLは、JSONオブジェクトの構造に応じて、ページの異なるセクション用に構築されます。jQuery DOM操作効率 - JavaScriptでページ全体を構築する
このページには、さまざまなスライダ、モーダルなどの「ダイナミック」コンテンツがあります。
私の質問は、(標準連結よりもはるかに速い文字列ビルダーを使用して)HTMLを1つの大きな文字列として構築するために、IE7を最小公約数として利用できるようになります。バルクファッション、すなわち
var html = "<div id='content'><p>All markup required for the page, built from the contents of the JSON object</p></div><div id='slider'>...</div>...etc."
$("body").html(html)
そして、それはDOMであり、見つけて、様々な動的な部分にプラグインを適用するためのjQueryを使用して、すなわち
$("#slider").sliderPlugin(options);
OR
各要素(またはいくつか)を変数として作成し、本文に追加する方が良いでしょうか?私は漠然と覚えて、私は一度HTMLを構築する最良の方法だと思い
slider.sliderPlugin(options);
なぜこれをやりますか?JavaScriptで文字列変数としてマークアップを発行する場合は、本文に作成するだけではいかがですか? – tvanfosson
私は「あなたはなぜこれをやるでしょうか」という質問には何も触れていません。しかし、要約すると、JSONコンテンツは変更可能ですので、異なるJSON =異なるページ出力、マークアップはJSONには含まれていません。ページの各エリアの内容だけです。マークアップはJSON構造に応じて生成されます。将来、同じマークアップを同じJSONで使用できるようになるので、レイアウトはソースコンテンツをリフォームすることなくアップグレードできます。 – Fergal
十分に公正です。ちょっと気になっただけ。おそらく、JSONの代わりにAJAXを使って部分的なHTMLビューを提供し、サーバー上のモデルからHTMLを構築すると思います。しかし、私は、データサーバーがWebサーバーと同じではない場合があると考えています。私は、文字列からHTMLを構築するのはむしろ面倒でエラーが発生する可能性があることを知っています。 http://knockoutjs.comの使用を検討することもできます – tvanfosson