Files
sechskies/variety/variety-shows.html
T

812 lines
49 KiB
HTML

<!DOCTYPE html>
<html lang="zh-TW">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>水晶男孩|全員發瘋</title>
<link rel="stylesheet" href="../assets/css/style.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">
<link rel="stylesheet" href="../assets/css/tablet.css">
<style>
/* 本頁專用:綜藝出演總表(維基式表格) */
body.variety-shows-page .variety-shows-main {
padding-bottom: 48px;
}
body.variety-shows-page .search-section {
display: flex;
justify-content: center;
width: 100%;
margin: 0 0 1.25rem;
position: relative;
z-index: 1;
}
body.variety-shows-page .search-input {
width: min(100%, 400px);
padding: 12px 25px;
border: 2px solid #ddd;
border-radius: 30px;
font-size: 1rem;
outline: none;
transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
background-color: #fff;
color: #333;
box-sizing: border-box;
}
body.variety-shows-page .search-input:hover {
border-color: #bbb;
}
body.variety-shows-page .search-input:focus {
border-color: #ffcc00;
box-shadow: 0 4px 15px rgba(255, 204, 0, 0.25);
transform: translateY(-2px);
}
body.variety-shows-page .variety-table-wrap {
width: 100%;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
border-radius: 4px;
border-top: 4px solid var(--primary);
background: #fff;
box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
}
body.variety-shows-page .variety-table {
width: 100%;
min-width: 640px;
margin: 0;
border-collapse: collapse;
border-radius: 0;
box-shadow: none;
background: #fff;
font-size: 0.875rem;
line-height: 1.45;
}
body.variety-shows-page .variety-table thead th {
background: #fff9e0;
color: #303030;
font-weight: 700;
padding: 10px 8px;
border: 1px solid #d8d8d8;
text-align: center;
vertical-align: middle;
white-space: nowrap;
}
body.variety-shows-page .variety-table tbody td {
padding: 8px 10px;
border: 1px solid #d8d8d8;
text-align: center;
vertical-align: middle;
color: #303030;
}
body.variety-shows-page .variety-table__show-row:nth-child(even) td {
background: #fafafa;
}
body.variety-shows-page .variety-table__year-row>td {
padding: 0;
text-align: left;
vertical-align: middle;
background: #fff9e0;
transition: background-color 0.15s ease;
}
body.variety-shows-page .variety-table__year-row .variety-table__year-cell {
padding: 0;
background: #fff9e0;
}
body.variety-shows-page .variety-table__year-pad {
padding: 0;
background: #fff9e0;
border-left: none;
}
body.variety-shows-page .variety-table__year-toggle {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
width: 100%;
min-height: 44px;
margin: 0;
padding: 12px 14px;
border: none;
border-radius: 0;
background: transparent;
cursor: pointer;
font: inherit;
color: inherit;
text-align: left;
box-sizing: border-box;
}
body.variety-shows-page .variety-table__year-row:not(.is-open)>td:has(.variety-table__year-toggle:hover),
body.variety-shows-page .variety-table__year-row:not(.is-open)>td:has(.variety-table__year-toggle:focus-visible) {
background: #fff6eb;
}
body.variety-shows-page .variety-table__year-row.is-open .variety-table__year-toggle:hover,
body.variety-shows-page .variety-table__year-row.is-open .variety-table__year-toggle:focus-visible {
background: #fff6eb;
outline: none;
}
body.variety-shows-page .variety-table__year-toggle:focus-visible {
outline: none;
}
body.variety-shows-page .variety-table__year-label {
font-weight: 700;
font-size: 1.05rem;
color: #5a4a12;
}
body.variety-shows-page .variety-table__year-meta {
margin-left: auto;
font-size: 0.82rem;
color: #6a6a6a;
}
body.variety-shows-page .variety-table__year-chevron {
color: #b48c00;
font-size: 0.9rem;
transition: transform 0.2s ease;
}
body.variety-shows-page .variety-table__year-row.is-open .variety-table__year-chevron {
transform: rotate(180deg);
}
body.variety-shows-page .variety-table__show-row[hidden] {
display: none;
}
body.variety-shows-page .variety-table .variety-table__program {
font-weight: 600;
}
body.variety-shows-page .variety-table a {
color: #0645ad;
text-decoration: none;
}
body.variety-shows-page .variety-table a:hover,
body.variety-shows-page .variety-table a:focus-visible {
text-decoration: underline;
}
body.variety-shows-page .variety-table a.variety-table__link--site {
color: #5a4a12;
font-weight: 600;
}
body.variety-shows-page .variety-table .variety-table__date {
color: #303030;
}
body.variety-shows-page .variety-table__air-date {
white-space: nowrap;
}
body.variety-shows-page .variety-table .variety-table__range-arrow {
margin: 0 0.18em;
color: #303030;
font-size: 0.82em;
vertical-align: 0.08em;
}
body.variety-shows-page .variety-shows-note {
margin-top: 0.75rem;
font-size: 0.82rem;
color: #6a6a6a;
text-align: left;
line-height: 1.6;
}
body.variety-shows-page .variety-shows-tabs {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 10px;
margin: 0 0 1.25rem;
}
body.variety-shows-page .variety-shows-table-slot {
margin-top: 0;
}
body.variety-shows-page .variety-shows-table-slot+.variety-shows-table-slot {
margin-top: 1.5rem;
}
body.variety-shows-page .variety-shows-table-slot[hidden] {
display: none;
}
body.variety-shows-page .variety-shows-back {
display: inline-flex;
align-items: center;
gap: 0.35rem;
margin-top: 1.5rem;
font-weight: 600;
color: #5a4a12;
}
@media (max-width: 720px) {
body.variety-shows-page .variety-table {
font-size: 0.8rem;
}
body.variety-shows-page .variety-table thead th,
body.variety-shows-page .variety-table tbody td {
padding: 7px 6px;
}
}
</style>
</head>
<body class="chronicle-page variety-shows-page">
<header class="map-archive-header">
<div class="header-inner site-header-inner">
<h1 class="main-title">全員發瘋</h1>
<div class="subtitle-wrap">
<span class="sub-title">VARIETY · ALL OUT</span>
</div>
</div>
</header>
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
<canvas id="particles"></canvas>
<main class="content-container variety-page-main variety-shows-main chronicle-reader">
<section id="variety-shows" class="variety-block" aria-labelledby="variety-shows-title">
<h2 class="section-title" id="variety-shows-title">全員發瘋</h2>
<div class="search-section">
<input type="search" id="variety-shows-search" class="search-input" placeholder="搜尋成員或節目…"
autocomplete="off" aria-label="搜尋成員或節目">
</div>
<div class="variety-shows-tabs" role="tablist" aria-label="綜藝分類">
<button type="button" class="tab-btn active" role="tab" id="variety-tab-all" data-tab="all"
aria-selected="true" aria-controls="variety-shows-panels">全員發瘋</button>
<button type="button" class="tab-btn" role="tab" id="variety-tab-captain" data-tab="captain"
aria-selected="false" aria-controls="variety-shows-panels">隊長帶弟弟</button>
<button type="button" class="tab-btn" role="tab" id="variety-tab-solo" data-tab="solo"
aria-selected="false" aria-controls="variety-shows-panels">各自暴走</button>
</div>
<div id="variety-shows-panels" class="variety-shows-panels">
<div class="variety-shows-table-slot" id="captain-brothers" data-show-tabs="all captain">
<div class="variety-table-wrap">
<table class="variety-table" id="variety-captain-table">
<thead>
<tr>
<th scope="col">播出日期</th>
<th scope="col">頻道</th>
<th scope="col">節目名稱</th>
<th scope="col">出演成員</th>
<th scope="col">集數</th>
</tr>
</thead>
<tbody class="variety-table__year-list">
<tr class="variety-table__year-row" data-year="2016">
<td colspan="5">
<button type="button" class="variety-table__year-toggle" aria-expanded="false"
aria-controls="captain-year-2016" id="captain-year-2016-btn">
<span class="variety-table__year-label">2016</span>
<span class="variety-table__year-meta">6 檔</span>
<i class="fa-solid fa-chevron-down variety-table__year-chevron"
aria-hidden="true"></i>
</button>
<div id="captain-year-2016" class="variety-table__year-panel" hidden>
<table class="variety-table variety-table--inner">
<tbody>
<tr>
<td class="variety-table__air-date" data-air-start="2016-04-22"
data-air-end="2016-06-17"><span
class="variety-table__date">04/22</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">06/17</span></td>
<td>tvN</td>
<td class="variety-table__program">新西遊記2</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;09</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2016-04-27"
data-air-end="2016-06-22"><span
class="variety-table__date">04/27</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">06/22</span></td>
<td>tvN</td>
<td class="variety-table__program">Let's GO 時間探險隊3</td>
<td>張水院</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;09</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2016-05-04"
data-air-end="2016-07-20"><span
class="variety-table__date">05/04</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">07/20</span></td>
<td>K-Star</td>
<td class="variety-table__program">真實的帥氣的</td>
<td></td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;12</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2016-06-05"
data-air-end="2016-08-21"><span
class="variety-table__date">06/05</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">08/21</span></td>
<td>JTBC</td>
<td class="variety-table__program">天下壯士</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;12</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2016-09-05"
data-air-end="2016-11-21"><span
class="variety-table__date">09/05</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">11/21</span></td>
<td>SBS</td>
<td class="variety-table__program">花樣旅行</td>
<td>殷志源、李宰鎮</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;12</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2016-10-12"
data-air-end="2016-10-21"><span
class="variety-table__date">10/12</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">10/21</span></td>
<td>JTBC</td>
<td class="variety-table__program">本月的活動王</td>
<td>張水院</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;02</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
<tr class="variety-table__year-row" data-year="2017">
<td colspan="5">
<button type="button" class="variety-table__year-toggle" aria-expanded="false"
aria-controls="captain-year-2017" id="captain-year-2017-btn">
<span class="variety-table__year-label">2017</span>
<span class="variety-table__year-meta">4 檔</span>
<i class="fa-solid fa-chevron-down variety-table__year-chevron"
aria-hidden="true"></i>
</button>
<div id="captain-year-2017" class="variety-table__year-panel" hidden>
<table class="variety-table variety-table--inner">
<tbody>
<tr>
<td class="variety-table__air-date" data-air-start="2017-01-01"
data-air-end="2019-06-02"><span
class="variety-table__date">01/01</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">19/06/02</span></td>
<td>KBS2</td>
<td class="variety-table__program">超人回來了</td>
<td>高志鎔</td>
<td>163&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;280</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2017-01-08"
data-air-end="2017-03-12"><span
class="variety-table__date">01/08</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">03/12</span></td>
<td>tvN</td>
<td class="variety-table__program">新西遊記3</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;09+導演版</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2017-06-13"
data-air-end="2017-08-22"><span
class="variety-table__date">06/13</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">08/22</span></td>
<td>tvN</td>
<td class="variety-table__program">新西遊記4</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;10+導演版</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2017-12-05"
data-air-end="2018-01-09"><span
class="variety-table__date">12/05</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">18/01/09</span></td>
<td>tvN</td>
<td class="variety-table__program">姜食堂</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;05+導演版</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
<tr class="variety-table__year-row" data-year="2018">
<td colspan="5">
<button type="button" class="variety-table__year-toggle" aria-expanded="false"
aria-controls="captain-year-2018" id="captain-year-2018-btn">
<span class="variety-table__year-label">2018</span>
<span class="variety-table__year-meta">3 檔</span>
<i class="fa-solid fa-chevron-down variety-table__year-chevron"
aria-hidden="true"></i>
</button>
<div id="captain-year-2018" class="variety-table__year-panel" hidden>
<table class="variety-table variety-table--inner">
<tbody>
<tr>
<td class="variety-table__air-date" data-air-start="2018-05-05"
data-air-end="2018-10-27"><span
class="variety-table__date">05/05</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">10/27</span></td>
<td>MBC</td>
<td class="variety-table__program">意外的Q</td>
<td></td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;25</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2018-09-30"
data-air-end="2018-10-28"><span
class="variety-table__date">09/30</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">10/28</span></td>
<td>tvN</td>
<td class="variety-table__program"><a
class="variety-table__link--site"
href="NJTW/NJTW5.html">新西遊記5</a></td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;05</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2018-10-28"
data-air-end="2018-12-02"><span
class="variety-table__date">10/28</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">12/02</span></td>
<td>tvN</td>
<td class="variety-table__program">新西遊記6</td>
<td>殷志源</td>
<td>00&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;05+導演版</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
<tr class="variety-table__year-row" data-year="2019">
<td colspan="5">
<button type="button" class="variety-table__year-toggle" aria-expanded="false"
aria-controls="captain-year-2019" id="captain-year-2019-btn">
<span class="variety-table__year-label">2019</span>
<span class="variety-table__year-meta">5 檔</span>
<i class="fa-solid fa-chevron-down variety-table__year-chevron"
aria-hidden="true"></i>
</button>
<div id="captain-year-2019" class="variety-table__year-panel" hidden>
<table class="variety-table variety-table--inner">
<tbody>
<tr>
<td class="variety-table__air-date" data-air-start="2019-05-31"
data-air-end="2019-07-05"><span
class="variety-table__date">05/31</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">07/05</span></td>
<td>tvN</td>
<td class="variety-table__program">姜食堂2</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;06</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2019-06-08"
data-air-end="2019-08-17"><span
class="variety-table__date">06/08</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">08/17</span></td>
<td>tvN</td>
<td class="variety-table__program">高校供餐王</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;11</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2019-07-05"
data-air-end="2019-08-02"><span
class="variety-table__date">07/05</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">08/02</span></td>
<td>tvN</td>
<td class="variety-table__program">姜食堂3</td>
<td>殷志源</td>
<td>00&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;04</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2019-09-20"
data-air-end="2019-11-22"><span
class="variety-table__date">09/20</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">11/22</span></td>
<td>tvN</td>
<td class="variety-table__program">去冰島的三餐</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;10</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2019-10-25"
data-air-end="2020-01-03"><span
class="variety-table__date">10/25</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">20/01/03</span></td>
<td>tvN</td>
<td class="variety-table__program">新西遊記7</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;11</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
<tr class="variety-table__year-row" data-year="2020">
<td colspan="5">
<button type="button" class="variety-table__year-toggle" aria-expanded="false"
aria-controls="captain-year-2020" id="captain-year-2020-btn">
<span class="variety-table__year-label">2020</span>
<span class="variety-table__year-meta">2 檔</span>
<i class="fa-solid fa-chevron-down variety-table__year-chevron"
aria-hidden="true"></i>
</button>
<div id="captain-year-2020" class="variety-table__year-panel" hidden>
<table class="variety-table variety-table--inner">
<tbody>
<tr>
<td class="variety-table__air-date" data-air-start="2020-01-10"
data-air-end="2020-03-27"><span
class="variety-table__date">01/10</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">03/27</span></td>
<td>tvN</td>
<td class="variety-table__program">星期五星期五晚上</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;10+導演版</td>
</tr>
<tr>
<td class="variety-table__air-date" data-air-start="2020-10-09"
data-air-end="2020-12-18"><span
class="variety-table__date">10/09</span>&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;<span
class="variety-table__date">12/18</span></td>
<td>tvN</td>
<td class="variety-table__program">新西遊記8</td>
<td>殷志源</td>
<td>01&nbsp;<i
class="fa-solid fa-circle-right variety-table__range-arrow"
aria-hidden="true"></i>&nbsp;10+導演版</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="variety-shows-table-slot" id="each-rampage" data-show-tabs="all solo">
<div class="variety-table-wrap">
<table class="variety-table" id="variety-solo-table">
<thead>
<tr>
<th scope="col">播出日期</th>
<th scope="col">頻道</th>
<th scope="col">節目名稱</th>
<th scope="col">出演成員</th>
<th scope="col">集數</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan="5">陸續補上;站內專頁例:<a class="variety-table__link--site"
href="NJTW/NJTW5.html">新西遊記5</a></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<a class="variety-shows-back" href="variety.html#variety"><i class="fa-solid fa-arrow-left"
aria-hidden="true"></i> 返回瘋子與天才</a>
</section>
</main>
<footer>
<p>SECHSKIES Fanpage &copy; 2026 - 黃色氣球永遠飄揚</p>
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank" rel="noopener noreferrer">
Design by <span class="mark_b">Jekkinoopy Studio</span>
</a>
</footer>
<script src="../assets/js/portal-nav.js"></script>
<script src="../assets/js/particles.js"></script>
<script>
(function () {
const tabBtns = document.querySelectorAll(".variety-shows-tabs .tab-btn");
const slots = document.querySelectorAll(".variety-shows-table-slot");
const input = document.getElementById("variety-shows-search");
const hashToTab = {
"captain-brothers": "captain",
"each-rampage": "solo",
};
function tabFromHash() {
const id = (location.hash || "").replace(/^#/, "");
return hashToTab[id] || "all";
}
function setYearOpen(yearRow, open) {
const btn = yearRow.querySelector(".variety-table__year-toggle");
const panel = yearRow.querySelector(".variety-table__year-panel");
if (!btn || !panel) return;
btn.setAttribute("aria-expanded", open ? "true" : "false");
panel.hidden = !open;
yearRow.classList.toggle("is-open", open);
}
function filterVisibleRows() {
const q = (input && input.value.trim().toLowerCase()) || "";
slots.forEach((slot) => {
if (slot.hidden) return;
slot.querySelectorAll(".variety-table__year-row").forEach((yearRow) => {
const detailRows = yearRow.querySelectorAll(
".variety-table--inner tbody tr"
);
let anyMatch = false;
detailRows.forEach((row) => {
const air = row.querySelector(".variety-table__air-date");
const airData = air
? `${air.dataset.airStart || ""} ${air.dataset.airEnd || ""}`
: "";
const text = (row.textContent + " " + airData)
.replace(/\s+/g, " ")
.trim()
.toLowerCase();
const match = !q || text.includes(q);
row.hidden = !match;
if (match) anyMatch = true;
});
if (q && anyMatch) setYearOpen(yearRow, true);
yearRow.hidden = Boolean(q) && !anyMatch;
});
});
}
document.querySelectorAll(".variety-table__year-toggle").forEach((btn) => {
btn.addEventListener("click", () => {
const yearRow = btn.closest(".variety-table__year-row");
const open = btn.getAttribute("aria-expanded") !== "true";
setYearOpen(yearRow, open);
});
});
function showTab(tab) {
tabBtns.forEach((btn) => {
const on = btn.dataset.tab === tab;
btn.classList.toggle("active", on);
btn.setAttribute("aria-selected", on ? "true" : "false");
});
slots.forEach((slot) => {
const keys = (slot.dataset.showTabs || "").split(/\s+/);
slot.hidden = !keys.includes(tab);
});
filterVisibleRows();
}
tabBtns.forEach((btn) => {
btn.addEventListener("click", () => {
const tab = btn.dataset.tab;
showTab(tab);
const hash =
tab === "captain"
? "#captain-brothers"
: tab === "solo"
? "#each-rampage"
: "";
history.replaceState(
null,
"",
hash || location.pathname + location.search
);
});
});
if (input) {
input.addEventListener("input", filterVisibleRows);
}
window.addEventListener("hashchange", () => showTab(tabFromHash()));
showTab(tabFromHash());
})();
</script>
</body>
</html>