- 締切済み
jqueryでhrefの値を取得して代入する方法
jquery 初級者です。 下の様なaタグをクリックした時に、(リンク先に移動し)hrefの値と紐付けされているdivを開きたいのですが、どうしてもうまくいきません。 <a class="btn" href="#contents">開く</a> <div id="contents" style="display:none;"> 開きたいコンテンツ。通常は見えない。 </div> ※実際はこうしたリンク要素がたくさんあるため、hrefの値を取得する形にしたいのです。 どなたか詳しい方宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- fujillin
- ベストアンサー率61% (1594/2576)
どういうルールになっているのか書いて無いので、まったくのあてずっぽですが… $("a.btn").click(function(){ $($(this).attr("href")).show(); }); とか?
- play_with_you
- ベストアンサー率37% (112/301)
だから初心者どもは「うまくいかない」だけで説明した気になるなと… 「何をしたか」「どうだめだったか」「どこが分からないか」が無い質問なんて(どんなに詳しく文章を書いても)丸投げと変わりません。 ●以下回答。 click()に、該当箇所の表示と該当箇所への移動を両方入れるだけ。 ちなみに非表示化はしなくてもいいんですか? しないなら開きっぱなしでも大して変わらないと思う。
補足
失礼しました。 下記で、#contentsに移動、表示にすることはできたのですが、 $(function(){ $(".btn").on("click", function() { $("#contents").show(); }); こうしたリンクが数十リンクあるため、hrefの値と、クリックした時に表示させたいdivのidの値を紐付けするような形でできないかと考えています。 以下でhrefの値を取得できるとでていましたが・・・ var url = $("a").attr("href"); 取得した値を使って、そのdivを開くという書き方が分からない状況です。 デフォルトでは<div>要素はdisplay:none;で全て非表示になっているという前提です。 宜しくお願い致します。
お礼
説明不足ですいません。解決しました。 ありがとうございました。