- 締切済み
アコーディオンメニューについて
jQueryを使ったアコーディオンメニューを作成しているのですが、 <dt>をクリックすると<dd>部分に外部のテキストファイルを表示させる方法がわかりません。 以下の記述に何を付け足せば良いのですか? $(function(){ $("dd:not(:first)").css("display","none") $("dt:first").addClass("selected"); $("dl dt").click(function(){ if($("+dd",this).css("display")=="none"){ $("dd").slideUp("slow"); $("+dd",this).slideDown("slow"); $("dt").removeClass("selected"); $(this).addClass("selected"); } }).mouseover(function(){ $(this).addClass("over"); }).mouseout(function(){ $(this).removeClass("over"); }) }) <dl> <dt>Step.1</dt> <dd><p>Lorem ...(中略)... venenatis.</p></dd> <dt>Step.2</dt> <dd><p>Integer ...(中略)... accumsan. </p></dd> <dt>Step.3</dt> <dd><p>Integer ...(中略)... imperdiet. </p></dd> </dl>
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- yyr446
- ベストアンサー率65% (870/1330)
外部のテキストファイルをAJAXで読み込みたいんですよね。そのファイルの選択の条件が書いてないんで、適当にやってます。 ↓のサンプルではクリックした<dt>のテキストからその<dd>用の外部のテキストファイルのurlを勝手に作ってます。 <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript">google.load("jquery", "1.5");</script> <script type="text/javascript"> $(function(){ $("dd:not(:first)").css("display","none") $("dt:first").addClass("selected"); $("dl dt").click(function(){ var url = "./" + $(this).text() + ".html"; $("+dd",this).load(url,acordion($(this))); }).mouseover(function(){$(this).addClass("over"); }).mouseout(function(){$(this).removeClass("over"); }); $("dt:first").click(); function acordion(target){ if($("+dd",target).css("display")=="none"){ $("dd").slideUp("slow"); $("+dd",target).slideDown("slow"); $("dt").removeClass("selected"); target.addClass("selected"); } } }); </script> <dl> <dt>Step.1</dt><dd></dd> <dt>Step.2</dt><dd></dd> <dt>Step.3</dt><dd></dd> </dl> ./Step.1.htmlの中身はとりあえず、 <p>Lorem ...(中略)... venenatis.</p> ......