質問編集履歴
1
javascript,CSSを追加しました。タブ箇所のhtmlも書き換えました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -56,19 +56,120 @@
|
|
56
56
|
タブ切り替えのhtmlはこれを使用し、
|
57
57
|
```ここに言語を入力
|
58
58
|
<ul class="tab_area">
|
59
|
-
<li id="tab1" class="select">
|
59
|
+
<li id="tab1" class="select">2019</li>
|
60
|
-
<li id="tab2">
|
60
|
+
<li id="tab2">2018</li>
|
61
|
-
<li id="tab3">
|
61
|
+
<li id="tab3">2017</li>
|
62
|
+
<li id="tab4">2016</li>
|
63
|
+
<li id="tab5">2015</li>
|
64
|
+
<li id="tab6">2014</li>
|
62
65
|
</ul>
|
63
66
|
|
64
67
|
<div class="content_area">
|
65
|
-
|
68
|
+
2019の内容
|
66
69
|
</div>
|
67
70
|
|
68
71
|
<div class="content_area hide">
|
69
|
-
|
72
|
+
2018の内容
|
70
73
|
</div>
|
74
|
+
|
75
|
+
<div class="content_area hide">
|
76
|
+
2017の内容
|
77
|
+
</div>
|
78
|
+
|
79
|
+
<div class="content_area hide">
|
80
|
+
2016の内容
|
81
|
+
</div>
|
82
|
+
|
83
|
+
<div class="content_area hide">
|
84
|
+
2015の内容
|
85
|
+
</div>
|
86
|
+
|
87
|
+
<div class="content_area hide">
|
88
|
+
2014の内容
|
89
|
+
</div>
|
71
90
|
```
|
72
91
|
|
92
|
+
javascript
|
93
|
+
```ここに言語を入力
|
94
|
+
jQuery(function($){
|
95
|
+
//クリックしたときのファンクションをまとめて指定
|
96
|
+
$('ul.tab_area li').click(function() {
|
97
|
+
//.index()を使いクリックされたタブが何番目かを調べ、
|
98
|
+
//indexという変数に代入します。
|
99
|
+
var index = $('ul.tab_area li').index(this);
|
100
|
+
//コンテンツを一度すべて非表示にし、
|
101
|
+
$('.content_area').css('display','none');
|
102
|
+
//クリックされたタブと同じ順番のコンテンツを表示します。
|
103
|
+
$('.content_area').eq(index).fadeIn();
|
104
|
+
//一度タブについているクラスselectを消し、
|
105
|
+
$('.tab_area li').removeClass('select');
|
106
|
+
//クリックされたタブのみにクラスselectをつけます。
|
107
|
+
$(this).addClass('select')
|
108
|
+
});
|
109
|
+
});
|
110
|
+
|
111
|
+
jQuery(function($){
|
112
|
+
//location.hashで#以下を取得 変数hashに格納
|
113
|
+
var hash = location.hash;
|
114
|
+
//hashの中に#tab~が存在するか調べる。
|
115
|
+
hash = (hash.match(/^#tab\d+$/) || [])[0];
|
116
|
+
//hashに要素が存在する場合、hashで取得した文字列(#tab2,#tab3等)から#より後を取得(tab2,tab3)
|
117
|
+
if($(hash).length){
|
118
|
+
var tabname = hash.slice(1);
|
119
|
+
} else{
|
120
|
+
// 要素が存在しなければ初期化
|
121
|
+
var tabname = "tab1";}
|
122
|
+
//コンテンツを一度すべて非表示にし、
|
123
|
+
$('.content_area').css('display','none');
|
124
|
+
//一度タブについているクラスselectを消し、
|
125
|
+
$('.tab_area li').removeClass('select');
|
126
|
+
var tabno = $('ul.tab_area li#' + tabname).index();
|
127
|
+
//クリックされたタブと同じ順番のコンテンツを表示します。
|
128
|
+
$('.content_area').eq(tabno).fadeIn();
|
129
|
+
//クリックされたタブのみにクラスselectをつけます。
|
130
|
+
$('ul.tab_area li').eq(tabno).addClass('select')
|
131
|
+
});
|
132
|
+
```
|
133
|
+
|
134
|
+
CSS
|
135
|
+
```ここに言語を入力
|
136
|
+
.tab_area{
|
137
|
+
overflow:hidden;
|
138
|
+
margin:0 auto;
|
139
|
+
width:100%;
|
140
|
+
border-bottom:#ccc solid 1px;
|
141
|
+
text-align:center;
|
142
|
+
}
|
143
|
+
|
144
|
+
.tab_area li{
|
145
|
+
color:#000;
|
146
|
+
padding:15px 0;
|
147
|
+
margin:0 5vw;
|
148
|
+
display:inline-block;
|
149
|
+
margin-right:-1px;
|
150
|
+
cursor:pointer;
|
151
|
+
font-size:1rem;
|
152
|
+
}
|
153
|
+
|
154
|
+
.all_area {
|
155
|
+
overflow: hidden;
|
156
|
+
}
|
157
|
+
|
158
|
+
.all_area div.content_area{
|
159
|
+
background:#fff;
|
160
|
+
padding:30px 0 0 0;
|
161
|
+
margin-bottom:30px;
|
162
|
+
border-top:1px solid #1E3784;
|
163
|
+
}
|
164
|
+
|
165
|
+
.tab_area li.select{
|
166
|
+
/*アクティブタブの装飾*/
|
167
|
+
border-bottom:5px solid #000;
|
168
|
+
}
|
169
|
+
|
170
|
+
.hide{display:none;}
|
171
|
+
|
172
|
+
```
|
173
|
+
|
73
|
-
|
174
|
+
静的には動きました。動的にこれを表示する方法が分かりません。
|
74
175
|
どなたかご教授いただけないでしょうか。
|