HTML5とjQueryでFAQ Builder ver.2.0のデータを出力する
そんなに激しい改造じゃない。FAQ Builder ver.2.0でデータを入力したり管理したりして、出力されるXMLファイルをjQueryで読み取る方法を考えてみた。いいよFAQ Builder ver.2.0、FAQ作るならとってもGoodだと思う。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <!--jquery召還魔法--> <script type="text/javascript">google.load("jquery", "1.4.2");</script> <script type="text/javascript"> <!-- $(document).ready(function(){ $.ajax({ url: "mail.data.xml", dataType: "xml", success:xmlConv }); }); function xmlConv(xml){ $("h1").html($("documentTitle", xml).text()); var i=1, j=1; /*一覧作成*/ var cat_list="<ul>"; /*質問一覧*/ var q_list=""; /*回答付き*/ var a_list=""; $("category", xml).each(function(){ cat_list+="<li><a href='#cat_list'"+i+"'>"+$("categoryTitle", this).text()+"</a></li>\n"; i++; q_list+="<h2 id='cat_list"+i+"'>"+$("categoryTitle", this).text()+"</h2>\n<ul>"; a_list+="<h2>"+$("categoryTitle", this).text()+"</h2>\n"; $("question", this).each(function(){ q_list+="<li><a href='#"+j+"'>"+$("questionTitle", this).text()+"</a></li>\n"; a_list+="<h3 id='"+j+"'>"+$("questionTitle", this).text()+"</h3>\n"; var ans=$("answer", this).text(); ans=ans.replace(/(\n|\r)/g, "<br />"); a_list+="<div class='answer'>"+ans+"</div>\n"; j++; }); a_list+="<div class='pagetop'><a href='#pagetop'>▲Page Top</a></div>\n"; q_list+="</ul>\n"; }) cat_list+="</ul>"; q_list+="<hr>"; $("#faq").html(cat_list+q_list+a_list); } --> </script> </head> <body role="application"> <h1>Page Title</h1> <div id="faq" class="faq">faq</div> </body> </html>
うん、うん。