質問編集履歴

1

javascript,CSSを追加しました。タブ箇所のhtmlも書き換えました。

2019/01/15 05:59

投稿

heyhey...
heyhey...

スコア40

test CHANGED
File without changes
test CHANGED
@@ -114,11 +114,17 @@
114
114
 
115
115
  <ul class="tab_area">
116
116
 
117
- <li id="tab1" class="select">最初のコンテンツタイトル</li>
117
+ <li id="tab1" class="select">2019</li>
118
-
118
+
119
- <li id="tab2">次のコンテンツタイトル</li>
119
+ <li id="tab2">2018</li>
120
-
120
+
121
- <li id="tab3">次のコンテンツタイトル</li>
121
+ <li id="tab3">2017</li>
122
+
123
+ <li id="tab4">2016</li>
124
+
125
+ <li id="tab5">2015</li>
126
+
127
+ <li id="tab6">2014</li>
122
128
 
123
129
  </ul>
124
130
 
@@ -126,15 +132,47 @@
126
132
 
127
133
  <div class="content_area">
128
134
 
129
- 最初コンテンツ内容
135
+ 2019の内容
130
-
136
+
131
- </div>
137
+ </div>
132
-
133
-
134
-
138
+
139
+
140
+
135
- <div class="content_area hide">
141
+ <div class="content_area hide">
136
-
142
+
137
- コンテンツ内容
143
+ 2018の内容
144
+
145
+ </div>
146
+
147
+
148
+
149
+ <div class="content_area hide">
150
+
151
+ 2017の内容
152
+
153
+ </div>
154
+
155
+
156
+
157
+ <div class="content_area hide">
158
+
159
+ 2016の内容
160
+
161
+ </div>
162
+
163
+
164
+
165
+ <div class="content_area hide">
166
+
167
+ 2015の内容
168
+
169
+ </div>
170
+
171
+
172
+
173
+ <div class="content_area hide">
174
+
175
+ 2014の内容
138
176
 
139
177
  </div>
140
178
 
@@ -142,6 +180,170 @@
142
180
 
143
181
 
144
182
 
183
+ javascript
184
+
185
+ ```ここに言語を入力
186
+
187
+ jQuery(function($){
188
+
189
+ //クリックしたときのファンクションをまとめて指定
190
+
191
+ $('ul.tab_area li').click(function() {
192
+
193
+ //.index()を使いクリックされたタブが何番目かを調べ、
194
+
195
+ //indexという変数に代入します。
196
+
197
+ var index = $('ul.tab_area li').index(this);
198
+
199
+ //コンテンツを一度すべて非表示にし、
200
+
201
+ $('.content_area').css('display','none');
202
+
203
+ //クリックされたタブと同じ順番のコンテンツを表示します。
204
+
205
+ $('.content_area').eq(index).fadeIn();
206
+
207
+ //一度タブについているクラスselectを消し、
208
+
209
+ $('.tab_area li').removeClass('select');
210
+
211
+ //クリックされたタブのみにクラスselectをつけます。
212
+
213
+ $(this).addClass('select')
214
+
215
+ });
216
+
217
+ });
218
+
219
+
220
+
221
+ jQuery(function($){
222
+
223
+ //location.hashで#以下を取得 変数hashに格納
224
+
225
+ var hash = location.hash;
226
+
227
+ //hashの中に#tab~が存在するか調べる。
228
+
229
+ hash = (hash.match(/^#tab\d+$/) || [])[0];
230
+
231
+ //hashに要素が存在する場合、hashで取得した文字列(#tab2,#tab3等)から#より後を取得(tab2,tab3)
232
+
233
+ if($(hash).length){
234
+
235
+ var tabname = hash.slice(1);
236
+
237
+ } else{
238
+
239
+ // 要素が存在しなければ初期化
240
+
241
+ var tabname = "tab1";}
242
+
243
+ //コンテンツを一度すべて非表示にし、
244
+
245
+ $('.content_area').css('display','none');
246
+
247
+ //一度タブについているクラスselectを消し、
248
+
249
+ $('.tab_area li').removeClass('select');
250
+
251
+ var tabno = $('ul.tab_area li#' + tabname).index();
252
+
253
+ //クリックされたタブと同じ順番のコンテンツを表示します。
254
+
255
+ $('.content_area').eq(tabno).fadeIn();
256
+
257
+ //クリックされたタブのみにクラスselectをつけます。
258
+
259
+ $('ul.tab_area li').eq(tabno).addClass('select')
260
+
261
+ });
262
+
263
+ ```
264
+
265
+
266
+
267
+ CSS
268
+
269
+ ```ここに言語を入力
270
+
271
+ .tab_area{
272
+
273
+ overflow:hidden;
274
+
275
+ margin:0 auto;
276
+
277
+ width:100%;
278
+
279
+ border-bottom:#ccc solid 1px;
280
+
281
+ text-align:center;
282
+
283
+ }
284
+
285
+
286
+
287
+ .tab_area li{
288
+
289
+ color:#000;
290
+
291
+ padding:15px 0;
292
+
293
+ margin:0 5vw;
294
+
295
+ display:inline-block;
296
+
297
+ margin-right:-1px;
298
+
299
+ cursor:pointer;
300
+
301
+ font-size:1rem;
302
+
303
+ }
304
+
305
+
306
+
307
+ .all_area {
308
+
309
+ overflow: hidden;
310
+
311
+ }
312
+
313
+
314
+
315
+ .all_area div.content_area{
316
+
317
+ background:#fff;
318
+
319
+ padding:30px 0 0 0;
320
+
321
+ margin-bottom:30px;
322
+
323
+ border-top:1px solid #1E3784;
324
+
325
+ }
326
+
327
+
328
+
329
+ .tab_area li.select{
330
+
331
+ /*アクティブタブの装飾*/
332
+
333
+ border-bottom:5px solid #000;
334
+
335
+ }
336
+
337
+
338
+
339
+ .hide{display:none;}
340
+
341
+
342
+
343
+ ```
344
+
345
+
346
+
145
- archive.phpのコードをめ込めばいいのでが、方法が分かりません。
347
+ 静的に動きました。動的にこを表示方法が分かりません。
146
348
 
147
349
  どなたかご教授いただけないでしょうか。