refactor totoga2四頁移入資料夾
This commit is contained in:
@@ -3,10 +3,10 @@
|
||||
* ── 導覽「尚未開放」連結 ─────────────────────────────────────────
|
||||
* 【兩個世界】① 僅 `extra/site-guide.html`:`<nav data-portal-nav-all-open>` 頂欄全可點;`main.site-guide-main` 內 `<a>` 不改寫。
|
||||
* ② 其餘每一頁:頂欄+**頁內所有連結**(含 totoga2 分頁列、首頁內文)皆依 COMING_SOON/INDEX 白名單鎖定。
|
||||
* 【totoga2】頂欄四入口:時間軸(`totoga2-copy-timeline.html`)、圖文好讀版(`totoga2.html`)在 Set;電子書/影片可點。未同意不得從 Set 刪除或擅自開放。
|
||||
* 【totoga2】頂欄四入口:時間軸(`timeline.html`)、圖文好讀版(`readable.html`)在 Set;電子書/影片可點。未同意不得從 Set 刪除或擅自開放。
|
||||
* 【硬規則】檔案在 repo ≠ 可開放;未同意不得從 Set 刪名、不得擴白名單、不得在模板新增可點項。
|
||||
* 【未公開】href 改 #、不可點。頂欄與頁內按鈕:NAV_SOON_PHRASES 滑過隨機氣泡(同 ::after);無障礙 aria「尚無開放」;不加可見「(籌備中)」文字後綴。
|
||||
* 【totoga2 開放】`extra/totoga2-copy-ebook.html`、`extra/totoga2-video.html` 可點;`totoga2-copy-timeline.html` 與 `fallen/totoga2.html` 在 Set 內。
|
||||
* 【totoga2 開放】`totoga2/ebook.html`、`totoga2/video.html` 可點;`timeline.html` 與 `totoga2/readable.html` 在 Set 內。
|
||||
* 頂欄勿加 `portal-nav__sub`(站主未要求);曾用副標見 `.cursor/portal-nav-optimization-backlog.md`。
|
||||
* 完整條文:`.cursor/rules/portal-nav-rules.mdc` + `user-scope-and-nav.mdc`
|
||||
*/
|
||||
@@ -65,8 +65,8 @@
|
||||
"member.html",
|
||||
"minister.html",
|
||||
"minister_ge.html",
|
||||
"totoga2.html",
|
||||
"totoga2-copy-timeline.html",
|
||||
"readable.html",
|
||||
"timeline.html",
|
||||
"variety.html",
|
||||
]);
|
||||
|
||||
@@ -251,10 +251,10 @@
|
||||
<li class="portal-nav__subgroup">
|
||||
<span class="portal-nav__subgroup-head"><span class="portal-nav__label">傳奇的轉折</span></span>
|
||||
<ul class="portal-submenu-nested" aria-label="傳奇的轉折">
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}extra/totoga2-copy-timeline.html"><span class="portal-nav__label">時間軸</span></a></li>
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}extra/totoga2-copy-ebook.html"><span class="portal-nav__label">電子書</span></a></li>
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}fallen/totoga2.html"><span class="portal-nav__label">圖文好讀版</span></a></li>
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}extra/totoga2-video.html"><span class="portal-nav__label">影片</span></a></li>
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}totoga2/timeline.html"><span class="portal-nav__label">時間軸</span></a></li>
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}totoga2/ebook.html"><span class="portal-nav__label">電子書</span></a></li>
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}totoga2/readable.html"><span class="portal-nav__label">圖文好讀版</span></a></li>
|
||||
<li><a target="_blank" rel="noopener noreferrer" href="${rp}totoga2/video.html"><span class="portal-nav__label">影片</span></a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="portal-nav__subgroup">
|
||||
|
||||
+29
-29
@@ -118,32 +118,32 @@
|
||||
</tr>
|
||||
<tr data-site-guide-depth="3">
|
||||
<td class="site-guide-nav-menu-cell"><span class="site-guide-nav-name"><a
|
||||
href="totoga2-copy-timeline.html">時間軸</a></span></td>
|
||||
href="../totoga2/timeline.html">時間軸</a></span></td>
|
||||
<td class="site-guide-nav-desc">時間軸與紀實八章長文單頁。</td>
|
||||
<td class="site-guide-nav-link-cell"><a
|
||||
href="totoga2-copy-timeline.html"><code>extra/totoga2-copy-timeline.html</code></a>
|
||||
href="../totoga2/timeline.html"><code>totoga2/timeline.html</code></a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr data-site-guide-depth="3">
|
||||
<td class="site-guide-nav-menu-cell"><span class="site-guide-nav-name"><a
|
||||
href="totoga2-copy-ebook.html">電子書</a></span></td>
|
||||
href="../totoga2/ebook.html">電子書</a></span></td>
|
||||
<td class="site-guide-nav-desc">紀實電子書內容獨立成頁。</td>
|
||||
<td class="site-guide-nav-link-cell"><a
|
||||
href="totoga2-copy-ebook.html"><code>extra/totoga2-copy-ebook.html</code></a></td>
|
||||
href="../totoga2/ebook.html"><code>totoga2/ebook.html</code></a></td>
|
||||
</tr>
|
||||
<tr data-site-guide-depth="3">
|
||||
<td class="site-guide-nav-menu-cell"><span class="site-guide-nav-name"><a
|
||||
href="../fallen/totoga2.html">圖文好讀版</a></span></td>
|
||||
href="../totoga2/readable.html">圖文好讀版</a></span></td>
|
||||
<td class="site-guide-nav-desc">單頁整合:影片/電子書/長文模式切換與八章錨點。</td>
|
||||
<td class="site-guide-nav-link-cell"><a
|
||||
href="../fallen/totoga2.html"><code>fallen/totoga2.html</code></a></td>
|
||||
href="../totoga2/readable.html"><code>totoga2/readable.html</code></a></td>
|
||||
</tr>
|
||||
<tr data-site-guide-depth="3">
|
||||
<td class="site-guide-nav-menu-cell"><span class="site-guide-nav-name"><a
|
||||
href="totoga2-video.html">影片</a></span></td>
|
||||
href="../totoga2/video.html">影片</a></span></td>
|
||||
<td class="site-guide-nav-desc">無限挑戰 · 六六歌2 嵌入影片單頁。</td>
|
||||
<td class="site-guide-nav-link-cell"><a
|
||||
href="totoga2-video.html"><code>extra/totoga2-video.html</code></a></td>
|
||||
href="../totoga2/video.html"><code>totoga2/video.html</code></a></td>
|
||||
</tr>
|
||||
<tr data-site-guide-depth="2">
|
||||
<td class="site-guide-nav-menu-cell"><span class="site-guide-nav-name"><span
|
||||
@@ -293,44 +293,44 @@
|
||||
<td>區塊錨點(<code>#story</code> 不在頂欄白名單)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="totoga2-copy-timeline.html">時間軸</a></td>
|
||||
<td>平行單頁 · <code>totoga2-copy-timeline.html</code></td>
|
||||
<td><a href="../totoga2/timeline.html">時間軸</a></td>
|
||||
<td>平行單頁 · <code>totoga2/timeline.html</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="totoga2-copy-ebook.html">電子書</a></td>
|
||||
<td>平行單頁 · <code>totoga2-copy-ebook.html</code></td>
|
||||
<td><a href="../totoga2/ebook.html">電子書</a></td>
|
||||
<td>平行單頁 · <code>totoga2/ebook.html</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="../fallen/totoga2.html">圖文好讀版</a></td>
|
||||
<td>整合長頁 · <code>fallen/totoga2.html</code></td>
|
||||
<td><a href="../totoga2/readable.html">圖文好讀版</a></td>
|
||||
<td>整合長頁 · <code>totoga2/readable.html</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="totoga2-video.html">影片</a></td>
|
||||
<td>平行單頁 · <code>totoga2-video.html</code></td>
|
||||
<td><a href="../totoga2/video.html">影片</a></td>
|
||||
<td>平行單頁 · <code>totoga2/video.html</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="site-guide-grid site-guide-grid--compact">
|
||||
<article class="site-guide-card site-guide-card--totoga2">
|
||||
<h3><a href="../fallen/totoga2.html">六六歌2 · 四入口</a></h3>
|
||||
<h3><a href="../totoga2/readable.html">六六歌2 · 四入口</a></h3>
|
||||
<p class="site-guide-note">複本總覽:<a href="totoga2%20copy.html">totoga2 copy.html</a>。章節錨點僅在圖文好讀版內。
|
||||
</p>
|
||||
<ul class="site-guide-inline-links">
|
||||
<li><a href="totoga2-copy-timeline.html">時間軸</a></li>
|
||||
<li><a href="totoga2-copy-ebook.html">電子書</a></li>
|
||||
<li><a href="../fallen/totoga2.html">圖文好讀版</a></li>
|
||||
<li><a href="totoga2-video.html">影片</a></li>
|
||||
<li><a href="../totoga2/timeline.html">時間軸</a></li>
|
||||
<li><a href="../totoga2/ebook.html">電子書</a></li>
|
||||
<li><a href="../totoga2/readable.html">圖文好讀版</a></li>
|
||||
<li><a href="../totoga2/video.html">影片</a></li>
|
||||
</ul>
|
||||
<nav class="site-guide-chapter-nav" aria-label="totoga2 章節">
|
||||
<a href="../fallen/totoga2.html#challenge">無限挑戰</a>
|
||||
<a href="../fallen/totoga2.html#ssg2">六六歌2</a>
|
||||
<a href="../fallen/totoga2.html#sechskies-profile">水晶男孩</a>
|
||||
<a href="../fallen/totoga2.html#gather">召集</a>
|
||||
<a href="../fallen/totoga2.html#negotiate">交涉</a>
|
||||
<a href="../fallen/totoga2.html#variables">變數</a>
|
||||
<a href="../fallen/totoga2.html#surprise">驚喜</a>
|
||||
<a href="../fallen/totoga2.html#final-stage">登場</a>
|
||||
<a href="readable.html#challenge">無限挑戰</a>
|
||||
<a href="readable.html#ssg2">六六歌2</a>
|
||||
<a href="readable.html#sechskies-profile">水晶男孩</a>
|
||||
<a href="readable.html#gather">召集</a>
|
||||
<a href="readable.html#negotiate">交涉</a>
|
||||
<a href="readable.html#variables">變數</a>
|
||||
<a href="readable.html#surprise">驚喜</a>
|
||||
<a href="readable.html#final-stage">登場</a>
|
||||
</nav>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<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">
|
||||
<link rel="stylesheet" href="totoga2-split-nav.css">
|
||||
<link rel="stylesheet" href="../totoga2/split-nav.css">
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page">
|
||||
@@ -30,25 +30,25 @@
|
||||
<h2 class="section-title" id="totoga2-copy-hub-title">六六歌2 複本 · 三頁分開</h2>
|
||||
<p class="ebook-intro-lead">
|
||||
原先單頁以按鈕切換「影片/電子書/時間軸+長文」;此複本改為<strong>三個獨立 HTML</strong>(檔名無空白,較利分享與書籤)。
|
||||
正式整合版仍以 <a href="../fallen/totoga2.html">fallen/totoga2.html</a> 為準。
|
||||
正式整合版仍以 <a href="../totoga2/readable.html">totoga2/readable.html</a> 為準。
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<nav class="ebook-back-link totoga2-split-crossnav totoga2-copy-hub-nav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="totoga2-copy-timeline.html" class="btn" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="totoga2-copy-ebook.html" class="btn" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="../fallen/totoga2.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="totoga2-video.html" class="btn" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
<a href="../totoga2/timeline.html" class="btn" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="../totoga2/ebook.html" class="btn" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="../totoga2/readable.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="../totoga2/video.html" class="btn" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
|
||||
<p class="ebook-intro-lead totoga2-copy-hub-anchor-hint">
|
||||
長文章節錨點請用 <a href="totoga2-copy-timeline.html#challenge">#challenge</a> 等同名 id(見時間軸頁)。
|
||||
長文章節錨點請用 <a href="../totoga2/timeline.html#challenge">#challenge</a> 等同名 id(見時間軸頁)。
|
||||
</p>
|
||||
</main>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
<a href="../fallen/totoga2.html" class="btn">主檔 fallen/totoga2.html</a>
|
||||
<a href="../totoga2/readable.html" class="btn">主檔 totoga2/readable.html</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
|
||||
@@ -1,169 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|六六歌2 — 紀實電子書</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">
|
||||
<link rel="stylesheet" href="totoga2-split-nav.css">
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="refresh" content="0; url=../totoga2/ebook.html">
|
||||
<link rel="canonical" href="../totoga2/ebook.html">
|
||||
<title>已搬移</title>
|
||||
<script>location.replace("../totoga2/ebook.html" + location.hash);</script>
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page totoga2-ebook-copy-page">
|
||||
<header class="map-archive-header">
|
||||
<div class="header-inner site-header-inner">
|
||||
<h1 class="main-title">無限挑戰 · 六六歌2</h1>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">水晶男孩回來啦!</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
|
||||
<nav class="ebook-back-link content-container totoga2-split-crossnav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="totoga2-copy-timeline.html" class="btn" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="totoga2-copy-ebook.html" class="btn" aria-current="page" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="../fallen/totoga2.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="totoga2-video.html" class="btn" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
|
||||
<div class="content-container ebook-main">
|
||||
<section class="ebook-intro section" aria-label="電子書說明">
|
||||
<h2 class="section-title">紀實電子書</h2>
|
||||
<p class="ebook-intro-lead">
|
||||
四月那場重逢,不只是一集綜藝,而是塵封十六年的旋律,終於在笑聲與淚水裡再次被聽見。這本紀實電子書留住《無限挑戰》六六歌2
|
||||
的每一頁:有驚喜、有拉扯,也有那些當時說不出口的想念。慢慢翻過去吧——我們後來才明白,有些情誼早已超越了表演,只是在節目的鏡頭裡,換了一種方式,陪彼此一起變老。
|
||||
</p>
|
||||
<div class="ebook-intro-notes fa-before-lead fa-before-lead--balloon">
|
||||
<p class="ebook-intro-note">看看後面飄落的氣球,等等十秒,電子書就會出現囉。</p>
|
||||
<p class="ebook-intro-note">翻頁方式:點擊書頁左、右側,或拖曳頁角即可往前/往後翻。</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- <div class="flip-ebook-shell">
|
||||
<div class="flip-ebook-aspect">
|
||||
<iframe src="https://online.fliphtml5.com/tjyxm/vqff/" title="2023_電子書_無限挑戰六六歌2_final跨頁"
|
||||
allowfullscreen></iframe>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<div class="flip-ebook-shell">
|
||||
<div id="book-container" class="flip-ebook-aspect flip-ebook-aspect--pageflip">
|
||||
<!-- PDF.js + PageFlip 會在此產生頁面 -->
|
||||
<div id="my-flipbook"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<!-- 1. 引入 PDF.js 核心庫 -->
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.min.js"></script>
|
||||
<!-- 2. 引入 PageFlip -->
|
||||
<script src="https://cdn.jsdelivr.net/npm/page-flip/dist/js/page-flip.browser.js"></script>
|
||||
<script>
|
||||
pdfjsLib.GlobalWorkerOptions.workerSrc = 'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.worker.min.js';
|
||||
|
||||
/** 專案內實際存在的 PDF(原 totoga2/ebook/totoga2_ebook.pdf 尚未建檔) */
|
||||
var EBOOK_PDF_URL = '../assets/images/totoga2/totoga2.pdf';
|
||||
|
||||
function showEbookError(message) {
|
||||
var box = document.getElementById('my-flipbook');
|
||||
if (!box) return;
|
||||
box.innerHTML = '<p class="ebook-pdf-error" role="alert">' + message + '</p>';
|
||||
}
|
||||
|
||||
async function initEbook(pdfUrl) {
|
||||
var container = document.getElementById('my-flipbook');
|
||||
if (!container) throw new Error('找不到 #my-flipbook');
|
||||
if (typeof pdfjsLib === 'undefined') throw new Error('PDF.js 未載入');
|
||||
if (typeof St === 'undefined' || !St.PageFlip) throw new Error('PageFlip(St.PageFlip)未載入');
|
||||
|
||||
var loadingTask = pdfjsLib.getDocument(pdfUrl);
|
||||
var pdf = await loadingTask.promise;
|
||||
|
||||
/* 第 1 頁為封面;內文比例以第 2 頁為準(與 PageFlip showCover 一致) */
|
||||
var sizePageIndex = pdf.numPages >= 2 ? 2 : 1;
|
||||
var sizePage = await pdf.getPage(sizePageIndex);
|
||||
var natural = sizePage.getViewport({ scale: 1 });
|
||||
var shell = document.querySelector('.flip-ebook-shell');
|
||||
var bookHost = document.getElementById('book-container');
|
||||
if (bookHost) {
|
||||
bookHost.style.width = '100%';
|
||||
bookHost.style.maxWidth = '100%';
|
||||
bookHost.style.marginLeft = '0';
|
||||
bookHost.style.marginRight = '0';
|
||||
}
|
||||
container.style.width = '100%';
|
||||
container.style.maxWidth = '100%';
|
||||
|
||||
var measureEl = bookHost || shell;
|
||||
var pageW = Math.max(320, Math.floor((measureEl && measureEl.clientWidth) || 0));
|
||||
var pageH = Math.floor(pageW * (natural.height / natural.width));
|
||||
var renderScale = (pageW / natural.width) * Math.min(window.devicePixelRatio || 1, 2);
|
||||
|
||||
for (var i = 1; i <= pdf.numPages; i++) {
|
||||
var page = await pdf.getPage(i);
|
||||
var viewport = page.getViewport({ scale: renderScale });
|
||||
|
||||
var canvas = document.createElement('canvas');
|
||||
var context = canvas.getContext('2d');
|
||||
canvas.height = viewport.height;
|
||||
canvas.width = viewport.width;
|
||||
|
||||
await page.render({ canvasContext: context, viewport: viewport }).promise;
|
||||
|
||||
var pageElement = document.createElement('div');
|
||||
pageElement.className = 'page';
|
||||
if (i === 1) {
|
||||
pageElement.setAttribute('data-density', 'hard');
|
||||
} else if (i === pdf.numPages) {
|
||||
pageElement.setAttribute('data-density', 'hard');
|
||||
}
|
||||
pageElement.appendChild(canvas);
|
||||
container.appendChild(pageElement);
|
||||
}
|
||||
|
||||
var pageFlip = new St.PageFlip(container, {
|
||||
width: pageW,
|
||||
height: pageH,
|
||||
/* stretch 在寬容器會固定走 landscape(總寬=2×半頁),跨頁 PDF 會被切成左空白+右半頁 */
|
||||
size: 'fixed',
|
||||
usePortrait: true,
|
||||
showCover: true,
|
||||
startPage: 0,
|
||||
autoSize: true,
|
||||
drawShadow: true,
|
||||
maxShadowOpacity: 0.4
|
||||
});
|
||||
pageFlip.loadFromHTML(document.querySelectorAll('#my-flipbook .page'));
|
||||
}
|
||||
|
||||
initEbook(EBOOK_PDF_URL).catch(function (err) {
|
||||
console.error(err);
|
||||
showEbookError(
|
||||
'電子書 PDF 無法載入或翻頁初始化失敗。若用本機直接開檔案(file://),請改由本機伺服器開啟;並確認路徑存在:<code>'
|
||||
+ EBOOK_PDF_URL + '</code>'
|
||||
);
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
<body><p>頁面已搬至 <a href="../totoga2/ebook.html">totoga2/ebook.html</a></p></body>
|
||||
</html>
|
||||
@@ -1,85 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|六六歌2 — 時間軸與紀實長文</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">
|
||||
<link rel="stylesheet" href="totoga2-split-nav.css">
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="refresh" content="0; url=../totoga2/timeline.html">
|
||||
<link rel="canonical" href="../totoga2/timeline.html">
|
||||
<title>已搬移</title>
|
||||
<script>location.replace("../totoga2/timeline.html" + location.hash);</script>
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page">
|
||||
<header class="map-archive-header">
|
||||
<div class="header-inner site-header-inner">
|
||||
<h1 class="main-title">無限挑戰 · 六六歌2</h1>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">水晶男孩回來啦!</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
|
||||
<nav class="ebook-back-link content-container totoga2-split-crossnav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="totoga2-copy-timeline.html" class="btn" aria-current="page" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="totoga2-copy-ebook.html" class="btn" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="../fallen/totoga2.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="totoga2-video.html" class="btn" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
|
||||
<div class="totoga2-reader-hub content-container ebook-main">
|
||||
<section class="story-archive totoga2-plot content-container" aria-labelledby="totoga2-plot-title">
|
||||
<h2 class="section-title" id="totoga2-plot-title">傳奇的轉折</h2>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">PLOT TWIST</span>
|
||||
</div>
|
||||
<p class="intro-text">
|
||||
與首頁相同的節點提要;點下方連結可跳到本頁「紀實長文」對應章節(八章皆在本頁,無需另開檔案)。
|
||||
</p>
|
||||
|
||||
<div class="merged-storyline">
|
||||
<article id="totoga2-special" class="story-node" data-era="六六歌">
|
||||
<h3>六六歌實錄</h3>
|
||||
<p>把懸念、試探與哭點縫在同一條時間軸上;很多人第一次真正把「水晶男孩」打進搜尋框,就是從這種瘋狂的剪輯節奏開始。</p>
|
||||
<p><a href="#ssg2">對照本頁幕後敘事 · 六六歌第二季</a></p>
|
||||
</article>
|
||||
<article id="totoga2-negotiate-card" class="story-node" data-era="交涉">
|
||||
<h3>命運的交涉</h3>
|
||||
<p>KTV、游擊演唱會規則、與其說講道理不如說把真心擺上桌面——交涉的不是合約字面,而是還願不願意再一次肩並肩。</p>
|
||||
<p><a href="#negotiate">讀本頁 · 正式交涉</a></p>
|
||||
</article>
|
||||
<article id="totoga2-complete" class="story-node" data-era="歸位">
|
||||
<h3>拼圖的歸位</h3>
|
||||
<p>變數一個個被排除之後,驚喜接上登場段落;缺一角舞台的視覺,終於對齊觀眾席上堅守的那片黃。</p>
|
||||
<p><a href="#gather">從本頁「召集」段開始補這條線</a></p>
|
||||
</article>
|
||||
<article id="totoga2-past" class="story-node" data-era="最初">
|
||||
<h3>巔峰與雨天</h3>
|
||||
<p>急凍、告別、各自的跑道——並不是要你沉浸遺憾,而是讓你懂:後來每一次亮燈,為什麼會更值得尖叫。</p>
|
||||
<p><a href="#sechskies-profile">讀本頁脈絡起點 · 水晶男孩</a></p>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<script src="../assets/js/totoga2.js"></script>
|
||||
</body>
|
||||
|
||||
<body><p>頁面已搬至 <a href="../totoga2/timeline.html">totoga2/timeline.html</a></p></body>
|
||||
</html>
|
||||
+6
-116
@@ -1,121 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|六六歌2 — 節目影片</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">
|
||||
<link rel="stylesheet" href="totoga2-split-nav.css">
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="refresh" content="0; url=../totoga2/video.html">
|
||||
<link rel="canonical" href="../totoga2/video.html">
|
||||
<title>已搬移</title>
|
||||
<script>location.replace("../totoga2/video.html" + location.hash);</script>
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page totoga2-video-copy-page">
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
|
||||
<nav class="ebook-back-link content-container totoga2-split-crossnav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="totoga2-copy-timeline.html" class="btn" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="totoga2-copy-ebook.html" class="btn" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="../fallen/totoga2.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="totoga2-video.html" class="btn" aria-current="page" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
|
||||
<div class="content-container ebook-main">
|
||||
<section class="ebook-intro section" aria-labelledby="ebook-bilivideo-heading">
|
||||
<h2 class="section-title" id="ebook-bilivideo-heading">節目影片</h2>
|
||||
|
||||
<div id="bilivideo-tabs" class="bilivideo-tabs__shell">
|
||||
<!-- tablist 在 DOM 上須先於 iframe,否則 B 站播放器合成層易蓋住下方按鈕文字;畫面順序改由 CSS flex order 控制 -->
|
||||
<nav class="bilivideo-episode-nav" role="tablist" aria-label="節目影片集數">
|
||||
<button type="button" class="btn bilivideo-episode-nav__tab bilivideo-episode-nav__tab--active"
|
||||
role="tab" id="bilivideo-tab-1" aria-controls="bilivideo-panel-1"
|
||||
aria-selected="true">上集</button>
|
||||
<button type="button" class="btn bilivideo-episode-nav__tab" role="tab" id="bilivideo-tab-2"
|
||||
aria-controls="bilivideo-panel-2" aria-selected="false" tabindex="-1">中集</button>
|
||||
<button type="button" class="btn bilivideo-episode-nav__tab" role="tab" id="bilivideo-tab-3"
|
||||
aria-controls="bilivideo-panel-3" aria-selected="false" tabindex="-1">下集</button>
|
||||
</nav>
|
||||
<div class="bilivideo-tabs__panels">
|
||||
<div class="bilivideo-tabs__panel" role="tabpanel" id="bilivideo-panel-1"
|
||||
aria-labelledby="bilivideo-tab-1">
|
||||
<div class="bilivideo-frame">
|
||||
<iframe title="無限挑戰 六六歌2 上集"
|
||||
src="//player.bilibili.com/player.html?isOutside=true&aid=12288323&bvid=BV1Yx411B7TC&cid=20353565&p=1"
|
||||
scrolling="no" border="0" frameborder="no" framespacing="0"
|
||||
allowfullscreen="true"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bilivideo-tabs__panel" role="tabpanel" id="bilivideo-panel-2"
|
||||
aria-labelledby="bilivideo-tab-2" hidden>
|
||||
<div class="bilivideo-frame">
|
||||
<iframe title="無限挑戰 六六歌2 中集"
|
||||
data-src="//player.bilibili.com/player.html?isOutside=true&aid=12288323&bvid=BV1Yx411B7TC&cid=20353561&p=2"
|
||||
scrolling="no" border="0" frameborder="no" framespacing="0"
|
||||
allowfullscreen="true"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bilivideo-tabs__panel" role="tabpanel" id="bilivideo-panel-3"
|
||||
aria-labelledby="bilivideo-tab-3" hidden>
|
||||
<div class="bilivideo-frame">
|
||||
<iframe title="無限挑戰 六六歌2 下集"
|
||||
data-src="//player.bilibili.com/player.html?isOutside=true&aid=12288323&bvid=BV1Yx411B7TC&cid=20353562&p=3"
|
||||
scrolling="no" border="0" frameborder="no" framespacing="0"
|
||||
allowfullscreen="true"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<script>
|
||||
(function () {
|
||||
var root = document.getElementById("bilivideo-tabs");
|
||||
if (!root) return;
|
||||
var tabs = Array.prototype.slice.call(root.querySelectorAll('[role="tab"]'));
|
||||
var panels = Array.prototype.slice.call(root.querySelectorAll('[role="tabpanel"]'));
|
||||
|
||||
function activate(index) {
|
||||
tabs.forEach(function (tab, i) {
|
||||
var on = i === index;
|
||||
tab.setAttribute("aria-selected", on ? "true" : "false");
|
||||
tab.tabIndex = on ? 0 : -1;
|
||||
if (on) tab.classList.add("bilivideo-episode-nav__tab--active");
|
||||
else tab.classList.remove("bilivideo-episode-nav__tab--active");
|
||||
panels[i].hidden = !on;
|
||||
if (on) {
|
||||
var iframe = panels[i].querySelector("iframe[data-src]");
|
||||
if (iframe && !iframe.getAttribute("src")) {
|
||||
iframe.setAttribute("src", iframe.getAttribute("data-src"));
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
tabs.forEach(function (tab, i) {
|
||||
tab.addEventListener("click", function () {
|
||||
activate(i);
|
||||
});
|
||||
});
|
||||
activate(0);
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
<body><p>頁面已搬至 <a href="../totoga2/video.html">totoga2/video.html</a></p></body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,257 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|無限挑戰六六歌2 — 紀實電子書</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>
|
||||
/* 僅本頁 main:加寬、取消左右內距(覆寫 .chronicle-reader / .content-container 的 padding) */
|
||||
body.totoga2-page main#totoga2-reader.chronicle-reader {
|
||||
max-width: min(1280px, 96vw);
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* 覆寫全站 .container(1200px/置中/大 padding),此頁圖列專用。
|
||||
* 勿沿用全站 header,nav,.container 的 z-index:1,否則圖列會疊在後方 h2、p 內文之上。 */
|
||||
body.totoga2-page #totoga2-reader .container {
|
||||
width: 100%;
|
||||
max-width: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
background-color: #ccc;
|
||||
clear: both;
|
||||
box-sizing: border-box;
|
||||
position: static;
|
||||
z-index: auto;
|
||||
}
|
||||
|
||||
/* 章節卡 .chronicle-chapter 有左右 padding;直屬 .container 負邊距拉出 → 貼滿 main 內寬 */
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter {
|
||||
--totoga-chapter-pad-inline: 20px;
|
||||
overflow: visible;
|
||||
display: flow-root;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>h2,
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>p {
|
||||
clear: both;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>.container {
|
||||
width: calc(100% + 2 * var(--totoga-chapter-pad-inline));
|
||||
margin-left: calc(-1 * var(--totoga-chapter-pad-inline));
|
||||
margin-right: calc(-1 * var(--totoga-chapter-pad-inline));
|
||||
}
|
||||
|
||||
@media (max-width: 640px) {
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter {
|
||||
--totoga-chapter-pad-inline: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
totoga2.html
|
||||
|
||||
/* 含圖列:必須寫在含 #totoga2-reader 的選取器上,否則會輸給上一段 #totoga2-reader .container 的 height,圖會溢出蓋住後文 */
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img) {
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img)::after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img)>[class^="container"] {
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.container11 {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: lightpink;
|
||||
}
|
||||
|
||||
.container21 {
|
||||
float: right;
|
||||
width: 50%;
|
||||
height: 100%;
|
||||
background-color: lightblue;
|
||||
}
|
||||
|
||||
.container22 {
|
||||
float: left;
|
||||
width: 50%;
|
||||
height: 100%;
|
||||
background-color: lightyellow;
|
||||
}
|
||||
|
||||
.container31 {
|
||||
float: left;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkblue;
|
||||
}
|
||||
|
||||
.container32 {
|
||||
float: left;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkgreen;
|
||||
}
|
||||
|
||||
.container33 {
|
||||
float: right;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkmagenta;
|
||||
}
|
||||
|
||||
.container41 {
|
||||
float: left;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightblue;
|
||||
}
|
||||
|
||||
.container42 {
|
||||
float: left;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightgreen;
|
||||
}
|
||||
|
||||
.container43 {
|
||||
float: right;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightpink;
|
||||
}
|
||||
|
||||
.container44 {
|
||||
float: right;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightyellow;
|
||||
}
|
||||
|
||||
/* 圖在欄寬內鋪滿,高度由瀏覽器依 intrinsic ratio 計算(須配合上方 :has(img) 拿掉固定列高) */
|
||||
body.totoga2-page .chronicle-reader img {
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page">
|
||||
<header class="map-archive-header">
|
||||
<div class="header-inner site-header-inner">
|
||||
<h1 class="main-title">無限挑戰 · 六六歌2</h1>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">水晶男孩回來啦!</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
<main class="content-container chronicle-reader" id="totoga2-reader" data-mode="scroll">
|
||||
<article class="chronicle-chapter active" id="challenge" data-title="無限挑戰">
|
||||
<!-- 序號一:第一列 container21(右欄 float:right)+ container22(左欄 float:left)→ 畫面左 01、右 02 -->
|
||||
|
||||
<!-- 序號二:第二列單一全寬 container11 -->
|
||||
<div class="container">
|
||||
<div class="container11">
|
||||
<img src="../assets/images/totoga2/web/cover.jpg" alt="六六歌2">
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div class="container22">
|
||||
</div>
|
||||
<div class="container21">
|
||||
<img src="" alt="六六歌2 電子書跨頁圖(序號一 · 右)">
|
||||
</div>
|
||||
</div>
|
||||
<h2>04 無限挑戰</h2>
|
||||
<p>《無限挑戰》是韓國綜藝史上指標性的真人秀節目。「星期六星期六是歌手(六六歌)」企劃,成為水晶男孩 2016 回歸舞台的關鍵起點。</p>
|
||||
<p>第一季掀起 90 年代懷舊熱潮,雖然水晶男孩未能完整出演,卻留下「總有一天要六人完整回到舞台」的遺憾伏筆。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="ssg2" data-title="六六歌第二季">
|
||||
<h2>06 六六歌第二季</h2>
|
||||
<p>第二季改成「為單一團體打造完整回歸敘事」,保密層級更高,連主持群都縮小到劉在錫與 HAHA,避免消息提前走漏。</p>
|
||||
<p>從開場的復古裝扮、試探式線索到真正揭曉團體身份,節目節奏在搞笑與懸念間拉開這場 16 年重逢序章。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="sechskies-profile" data-title="水晶男孩">
|
||||
<h2>08 水晶男孩</h2>
|
||||
<p>1997 出道後迅速登頂,與同世代頂流並列,短短三年創下極高銷量與舞台紀錄,卻在 2000 無預警解散,留下集體創傷。</p>
|
||||
<p>16 年間六人從未以水晶男孩名義完整合體,這次企劃不只是回憶,而是回應當年未說完的離別。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="gather" data-title="召集">
|
||||
<h2>10 召集</h2>
|
||||
<p>製作組先與隊長殷志源交涉,再透過隱藏攝影機確認成員意願。大家都希望重組,卻同時知道最困難的拼圖是離開演藝圈多年的高志溶。</p>
|
||||
<p>這個階段的重點不是舞台,而是「願不願意再次站在一起」的心理門檻。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="negotiate" data-title="正式交涉">
|
||||
<h2>11 正式交涉</h2>
|
||||
<p>主持人與成員深度對話,回顧解散緣由、舞台記憶、KTV 挑戰與游擊演唱會規則。笑鬧之間,團魂逐漸浮現。</p>
|
||||
<p>同時,節目也把高志溶議題正式擺上檯面:如果不是完整體,這次回歸是否還成立?</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="variables" data-title="變數">
|
||||
<h2>16 變數</h2>
|
||||
<p>排練期間接連出現傷病、手術需求與消息外流,原本理想的游擊演唱會計畫屢次被迫改寫,團隊陷入 B 計畫陰影。</p>
|
||||
<p>在體力與心理都被拉到極限的情況下,成員仍選擇撐住,只為把久違舞台交回給等待 16 年的小黃。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="surprise" data-title="驚喜">
|
||||
<h2>19 驚喜</h2>
|
||||
<p>當所有人幾乎接受「不完整」時,節目仍悄悄推進最後安排。高志溶與成員的情感張力在此段達到最高點。</p>
|
||||
<p>這份驚喜不是綜藝反轉,而是把六顆水晶的空位真正填回舞台。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="final-stage" data-title="登場">
|
||||
<h2>21 登場</h2>
|
||||
<p>眼罩揭開後,滿場黃海與哭聲同時湧現。從《請記得我》到安可,《離別曲》在那一晚變成了「重逢證詞」。</p>
|
||||
<p>2000 的缺憾,在 2016 終於補上。這一頁不是結束,而是團體與粉絲共同完成的回歸章節。</p>
|
||||
</article>
|
||||
</main>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<script src="../assets/js/totoga2.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
+6
-252
@@ -1,257 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|無限挑戰六六歌2 — 紀實電子書</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>
|
||||
/* 僅本頁 main:加寬、取消左右內距(覆寫 .chronicle-reader / .content-container 的 padding) */
|
||||
body.totoga2-page main#totoga2-reader.chronicle-reader {
|
||||
max-width: min(1280px, 96vw);
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* 覆寫全站 .container(1200px/置中/大 padding),此頁圖列專用。
|
||||
* 勿沿用全站 header,nav,.container 的 z-index:1,否則圖列會疊在後方 h2、p 內文之上。 */
|
||||
body.totoga2-page #totoga2-reader .container {
|
||||
width: 100%;
|
||||
max-width: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
background-color: #ccc;
|
||||
clear: both;
|
||||
box-sizing: border-box;
|
||||
position: static;
|
||||
z-index: auto;
|
||||
}
|
||||
|
||||
/* 章節卡 .chronicle-chapter 有左右 padding;直屬 .container 負邊距拉出 → 貼滿 main 內寬 */
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter {
|
||||
--totoga-chapter-pad-inline: 20px;
|
||||
overflow: visible;
|
||||
display: flow-root;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>h2,
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>p {
|
||||
clear: both;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>.container {
|
||||
width: calc(100% + 2 * var(--totoga-chapter-pad-inline));
|
||||
margin-left: calc(-1 * var(--totoga-chapter-pad-inline));
|
||||
margin-right: calc(-1 * var(--totoga-chapter-pad-inline));
|
||||
}
|
||||
|
||||
@media (max-width: 640px) {
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter {
|
||||
--totoga-chapter-pad-inline: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
totoga2.html
|
||||
|
||||
/* 含圖列:必須寫在含 #totoga2-reader 的選取器上,否則會輸給上一段 #totoga2-reader .container 的 height,圖會溢出蓋住後文 */
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img) {
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img)::after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img)>[class^="container"] {
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.container11 {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: lightpink;
|
||||
}
|
||||
|
||||
.container21 {
|
||||
float: right;
|
||||
width: 50%;
|
||||
height: 100%;
|
||||
background-color: lightblue;
|
||||
}
|
||||
|
||||
.container22 {
|
||||
float: left;
|
||||
width: 50%;
|
||||
height: 100%;
|
||||
background-color: lightyellow;
|
||||
}
|
||||
|
||||
.container31 {
|
||||
float: left;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkblue;
|
||||
}
|
||||
|
||||
.container32 {
|
||||
float: left;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkgreen;
|
||||
}
|
||||
|
||||
.container33 {
|
||||
float: right;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkmagenta;
|
||||
}
|
||||
|
||||
.container41 {
|
||||
float: left;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightblue;
|
||||
}
|
||||
|
||||
.container42 {
|
||||
float: left;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightgreen;
|
||||
}
|
||||
|
||||
.container43 {
|
||||
float: right;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightpink;
|
||||
}
|
||||
|
||||
.container44 {
|
||||
float: right;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightyellow;
|
||||
}
|
||||
|
||||
/* 圖在欄寬內鋪滿,高度由瀏覽器依 intrinsic ratio 計算(須配合上方 :has(img) 拿掉固定列高) */
|
||||
body.totoga2-page .chronicle-reader img {
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="refresh" content="0; url=../totoga2/readable.html">
|
||||
<link rel="canonical" href="../totoga2/readable.html">
|
||||
<title>已搬移</title>
|
||||
<script>location.replace("../totoga2/readable.html" + location.hash);</script>
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page">
|
||||
<header class="map-archive-header">
|
||||
<div class="header-inner site-header-inner">
|
||||
<h1 class="main-title">無限挑戰 · 六六歌2</h1>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">水晶男孩回來啦!</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
<main class="content-container chronicle-reader" id="totoga2-reader" data-mode="scroll">
|
||||
<article class="chronicle-chapter active" id="challenge" data-title="無限挑戰">
|
||||
<!-- 序號一:第一列 container21(右欄 float:right)+ container22(左欄 float:left)→ 畫面左 01、右 02 -->
|
||||
|
||||
<!-- 序號二:第二列單一全寬 container11 -->
|
||||
<div class="container">
|
||||
<div class="container11">
|
||||
<img src="../assets/images/totoga2/web/cover.jpg" alt="六六歌2">
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div class="container22">
|
||||
</div>
|
||||
<div class="container21">
|
||||
<img src="" alt="六六歌2 電子書跨頁圖(序號一 · 右)">
|
||||
</div>
|
||||
</div>
|
||||
<h2>04 無限挑戰</h2>
|
||||
<p>《無限挑戰》是韓國綜藝史上指標性的真人秀節目。「星期六星期六是歌手(六六歌)」企劃,成為水晶男孩 2016 回歸舞台的關鍵起點。</p>
|
||||
<p>第一季掀起 90 年代懷舊熱潮,雖然水晶男孩未能完整出演,卻留下「總有一天要六人完整回到舞台」的遺憾伏筆。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="ssg2" data-title="六六歌第二季">
|
||||
<h2>06 六六歌第二季</h2>
|
||||
<p>第二季改成「為單一團體打造完整回歸敘事」,保密層級更高,連主持群都縮小到劉在錫與 HAHA,避免消息提前走漏。</p>
|
||||
<p>從開場的復古裝扮、試探式線索到真正揭曉團體身份,節目節奏在搞笑與懸念間拉開這場 16 年重逢序章。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="sechskies-profile" data-title="水晶男孩">
|
||||
<h2>08 水晶男孩</h2>
|
||||
<p>1997 出道後迅速登頂,與同世代頂流並列,短短三年創下極高銷量與舞台紀錄,卻在 2000 無預警解散,留下集體創傷。</p>
|
||||
<p>16 年間六人從未以水晶男孩名義完整合體,這次企劃不只是回憶,而是回應當年未說完的離別。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="gather" data-title="召集">
|
||||
<h2>10 召集</h2>
|
||||
<p>製作組先與隊長殷志源交涉,再透過隱藏攝影機確認成員意願。大家都希望重組,卻同時知道最困難的拼圖是離開演藝圈多年的高志溶。</p>
|
||||
<p>這個階段的重點不是舞台,而是「願不願意再次站在一起」的心理門檻。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="negotiate" data-title="正式交涉">
|
||||
<h2>11 正式交涉</h2>
|
||||
<p>主持人與成員深度對話,回顧解散緣由、舞台記憶、KTV 挑戰與游擊演唱會規則。笑鬧之間,團魂逐漸浮現。</p>
|
||||
<p>同時,節目也把高志溶議題正式擺上檯面:如果不是完整體,這次回歸是否還成立?</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="variables" data-title="變數">
|
||||
<h2>16 變數</h2>
|
||||
<p>排練期間接連出現傷病、手術需求與消息外流,原本理想的游擊演唱會計畫屢次被迫改寫,團隊陷入 B 計畫陰影。</p>
|
||||
<p>在體力與心理都被拉到極限的情況下,成員仍選擇撐住,只為把久違舞台交回給等待 16 年的小黃。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="surprise" data-title="驚喜">
|
||||
<h2>19 驚喜</h2>
|
||||
<p>當所有人幾乎接受「不完整」時,節目仍悄悄推進最後安排。高志溶與成員的情感張力在此段達到最高點。</p>
|
||||
<p>這份驚喜不是綜藝反轉,而是把六顆水晶的空位真正填回舞台。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="final-stage" data-title="登場">
|
||||
<h2>21 登場</h2>
|
||||
<p>眼罩揭開後,滿場黃海與哭聲同時湧現。從《請記得我》到安可,《離別曲》在那一晚變成了「重逢證詞」。</p>
|
||||
<p>2000 的缺憾,在 2016 終於補上。這一頁不是結束,而是團體與粉絲共同完成的回歸章節。</p>
|
||||
</article>
|
||||
</main>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<script src="../assets/js/totoga2.js"></script>
|
||||
</body>
|
||||
|
||||
<body><p>頁面已搬至 <a href="../totoga2/readable.html">totoga2/readable.html</a></p></body>
|
||||
</html>
|
||||
+7
-7
@@ -177,33 +177,33 @@
|
||||
</div>
|
||||
<p class="intro-text">
|
||||
像劇情的反轉一樣過癮:這幾個節點,剛好是許多人從「旁觀綜藝」滑進「正式入坑」的轉軌。若想讀對白級細節,請開
|
||||
<a href="fallen/totoga2.html">六六歌2 整合專區</a>(影片/電子書/紀實長文八章,同一頁切換模式即可)。
|
||||
<a href="totoga2/readable.html">六六歌2 整合專區</a>(影片/電子書/紀實長文八章,同一頁切換模式即可)。
|
||||
</p>
|
||||
<div class="story-ebook-cta">
|
||||
<a href="fallen/totoga2.html#ebook" class="btn story-ebook-btn">開啟六六歌2 紀實電子書</a>
|
||||
<a href="fallen/totoga2.html" class="btn story-ebook-btn">六六歌2 整合專區</a>
|
||||
<a href="totoga2/readable.html#ebook" class="btn story-ebook-btn">開啟六六歌2 紀實電子書</a>
|
||||
<a href="totoga2/readable.html" class="btn story-ebook-btn">六六歌2 整合專區</a>
|
||||
</div>
|
||||
|
||||
<div class="merged-storyline">
|
||||
<article id="special" class="story-node" data-era="六六歌">
|
||||
<h3>六六歌實錄</h3>
|
||||
<p>把懸念、試探與哭點縫在同一條時間軸上;很多人第一次真正把「水晶男孩」打進搜尋框,就是從這種瘋狂的剪輯節奏開始。</p>
|
||||
<p><a href="fallen/totoga2.html#ssg2">對照這一段幕後敘事</a></p>
|
||||
<p><a href="totoga2/readable.html#ssg2">對照這一段幕後敘事</a></p>
|
||||
</article>
|
||||
<article id="negotiate" class="story-node" data-era="交涉">
|
||||
<h3>命運的交涉</h3>
|
||||
<p>KTV、游擊演唱會規則、與其說講道理不如說把真心擺上桌面——交涉的不是合約字面,而是還願不願意再一次肩並肩。</p>
|
||||
<p><a href="fallen/totoga2.html#negotiate">讀交涉與對話肌理</a></p>
|
||||
<p><a href="totoga2/readable.html#negotiate">讀交涉與對話肌理</a></p>
|
||||
</article>
|
||||
<article id="complete" class="story-node" data-era="歸位">
|
||||
<h3>拼圖的歸位</h3>
|
||||
<p>變數一個個被排除之後,驚喜接上登場段落;缺一角舞台的視覺,終於對齊觀眾席上堅守的那片黃。</p>
|
||||
<p><a href="fallen/totoga2.html#gather">從「召集」段開始補這條線</a></p>
|
||||
<p><a href="totoga2/readable.html#gather">從「召集」段開始補這條線</a></p>
|
||||
</article>
|
||||
<article id="past" class="story-node" data-era="最初">
|
||||
<h3>巔峰與雨天</h3>
|
||||
<p>急凍、告別、各自的跑道——並不是要你沉浸遺憾,而是讓你懂:後來每一次亮燈,為什麼會更值得尖叫。</p>
|
||||
<p><a href="fallen/totoga2.html#sechskies-profile">讀這條脈絡的起點</a></p>
|
||||
<p><a href="totoga2/readable.html#sechskies-profile">讀這條脈絡的起點</a></p>
|
||||
</article>
|
||||
</div>
|
||||
</section> -->
|
||||
|
||||
@@ -0,0 +1,169 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|六六歌2 — 紀實電子書</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">
|
||||
<link rel="stylesheet" href="split-nav.css">
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page totoga2-ebook-copy-page">
|
||||
<header class="map-archive-header">
|
||||
<div class="header-inner site-header-inner">
|
||||
<h1 class="main-title">無限挑戰 · 六六歌2</h1>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">水晶男孩回來啦!</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
|
||||
<nav class="ebook-back-link content-container totoga2-split-crossnav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="timeline.html" class="btn" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="ebook.html" class="btn" aria-current="page" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="readable.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="video.html" class="btn" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
|
||||
<div class="content-container ebook-main">
|
||||
<section class="ebook-intro section" aria-label="電子書說明">
|
||||
<h2 class="section-title">紀實電子書</h2>
|
||||
<p class="ebook-intro-lead">
|
||||
四月那場重逢,不只是一集綜藝,而是塵封十六年的旋律,終於在笑聲與淚水裡再次被聽見。這本紀實電子書留住《無限挑戰》六六歌2
|
||||
的每一頁:有驚喜、有拉扯,也有那些當時說不出口的想念。慢慢翻過去吧——我們後來才明白,有些情誼早已超越了表演,只是在節目的鏡頭裡,換了一種方式,陪彼此一起變老。
|
||||
</p>
|
||||
<div class="ebook-intro-notes fa-before-lead fa-before-lead--balloon">
|
||||
<p class="ebook-intro-note">看看後面飄落的氣球,等等十秒,電子書就會出現囉。</p>
|
||||
<p class="ebook-intro-note">翻頁方式:點擊書頁左、右側,或拖曳頁角即可往前/往後翻。</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- <div class="flip-ebook-shell">
|
||||
<div class="flip-ebook-aspect">
|
||||
<iframe src="https://online.fliphtml5.com/tjyxm/vqff/" title="2023_電子書_無限挑戰六六歌2_final跨頁"
|
||||
allowfullscreen></iframe>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<div class="flip-ebook-shell">
|
||||
<div id="book-container" class="flip-ebook-aspect flip-ebook-aspect--pageflip">
|
||||
<!-- PDF.js + PageFlip 會在此產生頁面 -->
|
||||
<div id="my-flipbook"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<!-- 1. 引入 PDF.js 核心庫 -->
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.min.js"></script>
|
||||
<!-- 2. 引入 PageFlip -->
|
||||
<script src="https://cdn.jsdelivr.net/npm/page-flip/dist/js/page-flip.browser.js"></script>
|
||||
<script>
|
||||
pdfjsLib.GlobalWorkerOptions.workerSrc = 'https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.worker.min.js';
|
||||
|
||||
/** 專案內實際存在的 PDF(原 totoga2/ebook/totoga2_ebook.pdf 尚未建檔) */
|
||||
var EBOOK_PDF_URL = '../assets/images/totoga2/totoga2.pdf';
|
||||
|
||||
function showEbookError(message) {
|
||||
var box = document.getElementById('my-flipbook');
|
||||
if (!box) return;
|
||||
box.innerHTML = '<p class="ebook-pdf-error" role="alert">' + message + '</p>';
|
||||
}
|
||||
|
||||
async function initEbook(pdfUrl) {
|
||||
var container = document.getElementById('my-flipbook');
|
||||
if (!container) throw new Error('找不到 #my-flipbook');
|
||||
if (typeof pdfjsLib === 'undefined') throw new Error('PDF.js 未載入');
|
||||
if (typeof St === 'undefined' || !St.PageFlip) throw new Error('PageFlip(St.PageFlip)未載入');
|
||||
|
||||
var loadingTask = pdfjsLib.getDocument(pdfUrl);
|
||||
var pdf = await loadingTask.promise;
|
||||
|
||||
/* 第 1 頁為封面;內文比例以第 2 頁為準(與 PageFlip showCover 一致) */
|
||||
var sizePageIndex = pdf.numPages >= 2 ? 2 : 1;
|
||||
var sizePage = await pdf.getPage(sizePageIndex);
|
||||
var natural = sizePage.getViewport({ scale: 1 });
|
||||
var shell = document.querySelector('.flip-ebook-shell');
|
||||
var bookHost = document.getElementById('book-container');
|
||||
if (bookHost) {
|
||||
bookHost.style.width = '100%';
|
||||
bookHost.style.maxWidth = '100%';
|
||||
bookHost.style.marginLeft = '0';
|
||||
bookHost.style.marginRight = '0';
|
||||
}
|
||||
container.style.width = '100%';
|
||||
container.style.maxWidth = '100%';
|
||||
|
||||
var measureEl = bookHost || shell;
|
||||
var pageW = Math.max(320, Math.floor((measureEl && measureEl.clientWidth) || 0));
|
||||
var pageH = Math.floor(pageW * (natural.height / natural.width));
|
||||
var renderScale = (pageW / natural.width) * Math.min(window.devicePixelRatio || 1, 2);
|
||||
|
||||
for (var i = 1; i <= pdf.numPages; i++) {
|
||||
var page = await pdf.getPage(i);
|
||||
var viewport = page.getViewport({ scale: renderScale });
|
||||
|
||||
var canvas = document.createElement('canvas');
|
||||
var context = canvas.getContext('2d');
|
||||
canvas.height = viewport.height;
|
||||
canvas.width = viewport.width;
|
||||
|
||||
await page.render({ canvasContext: context, viewport: viewport }).promise;
|
||||
|
||||
var pageElement = document.createElement('div');
|
||||
pageElement.className = 'page';
|
||||
if (i === 1) {
|
||||
pageElement.setAttribute('data-density', 'hard');
|
||||
} else if (i === pdf.numPages) {
|
||||
pageElement.setAttribute('data-density', 'hard');
|
||||
}
|
||||
pageElement.appendChild(canvas);
|
||||
container.appendChild(pageElement);
|
||||
}
|
||||
|
||||
var pageFlip = new St.PageFlip(container, {
|
||||
width: pageW,
|
||||
height: pageH,
|
||||
/* stretch 在寬容器會固定走 landscape(總寬=2×半頁),跨頁 PDF 會被切成左空白+右半頁 */
|
||||
size: 'fixed',
|
||||
usePortrait: true,
|
||||
showCover: true,
|
||||
startPage: 0,
|
||||
autoSize: true,
|
||||
drawShadow: true,
|
||||
maxShadowOpacity: 0.4
|
||||
});
|
||||
pageFlip.loadFromHTML(document.querySelectorAll('#my-flipbook .page'));
|
||||
}
|
||||
|
||||
initEbook(EBOOK_PDF_URL).catch(function (err) {
|
||||
console.error(err);
|
||||
showEbookError(
|
||||
'電子書 PDF 無法載入或翻頁初始化失敗。若用本機直接開檔案(file://),請改由本機伺服器開啟;並確認路徑存在:<code>'
|
||||
+ EBOOK_PDF_URL + '</code>'
|
||||
);
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,265 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|無限挑戰六六歌2 — 紀實電子書</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>
|
||||
/* 僅本頁 main:加寬、取消左右內距(覆寫 .chronicle-reader / .content-container 的 padding) */
|
||||
body.totoga2-page main#totoga2-reader.chronicle-reader {
|
||||
max-width: min(1280px, 96vw);
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* 覆寫全站 .container(1200px/置中/大 padding),此頁圖列專用。
|
||||
* 勿沿用全站 header,nav,.container 的 z-index:1,否則圖列會疊在後方 h2、p 內文之上。 */
|
||||
body.totoga2-page #totoga2-reader .container {
|
||||
width: 100%;
|
||||
max-width: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
background-color: #ccc;
|
||||
clear: both;
|
||||
box-sizing: border-box;
|
||||
position: static;
|
||||
z-index: auto;
|
||||
}
|
||||
|
||||
/* 章節卡 .chronicle-chapter 有左右 padding;直屬 .container 負邊距拉出 → 貼滿 main 內寬 */
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter {
|
||||
--totoga-chapter-pad-inline: 20px;
|
||||
overflow: visible;
|
||||
display: flow-root;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>h2,
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>p {
|
||||
clear: both;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter>.container {
|
||||
width: calc(100% + 2 * var(--totoga-chapter-pad-inline));
|
||||
margin-left: calc(-1 * var(--totoga-chapter-pad-inline));
|
||||
margin-right: calc(-1 * var(--totoga-chapter-pad-inline));
|
||||
}
|
||||
|
||||
@media (max-width: 640px) {
|
||||
body.totoga2-page #totoga2-reader .chronicle-chapter {
|
||||
--totoga-chapter-pad-inline: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
totoga2.html
|
||||
|
||||
/* 含圖列:必須寫在含 #totoga2-reader 的選取器上,否則會輸給上一段 #totoga2-reader .container 的 height,圖會溢出蓋住後文 */
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img) {
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img)::after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
body.totoga2-page #totoga2-reader.chronicle-reader .container:has(img)>[class^="container"] {
|
||||
height: auto;
|
||||
min-height: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.container11 {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: lightpink;
|
||||
}
|
||||
|
||||
.container21 {
|
||||
float: right;
|
||||
width: 50%;
|
||||
height: 100%;
|
||||
background-color: lightblue;
|
||||
}
|
||||
|
||||
.container22 {
|
||||
float: left;
|
||||
width: 50%;
|
||||
height: 100%;
|
||||
background-color: lightyellow;
|
||||
}
|
||||
|
||||
.container31 {
|
||||
float: left;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkblue;
|
||||
}
|
||||
|
||||
.container32 {
|
||||
float: left;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkgreen;
|
||||
}
|
||||
|
||||
.container33 {
|
||||
float: right;
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
background-color: darkmagenta;
|
||||
}
|
||||
|
||||
.container41 {
|
||||
float: left;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightblue;
|
||||
}
|
||||
|
||||
.container42 {
|
||||
float: left;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightgreen;
|
||||
}
|
||||
|
||||
.container43 {
|
||||
float: right;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightpink;
|
||||
}
|
||||
|
||||
.container44 {
|
||||
float: right;
|
||||
width: 25%;
|
||||
height: 100%;
|
||||
background-color: lightyellow;
|
||||
}
|
||||
|
||||
/* 圖在欄寬內鋪滿,高度由瀏覽器依 intrinsic ratio 計算(須配合上方 :has(img) 拿掉固定列高) */
|
||||
body.totoga2-page .chronicle-reader img {
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="split-nav.css">
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page">
|
||||
<header class="map-archive-header">
|
||||
<div class="header-inner site-header-inner">
|
||||
<h1 class="main-title">無限挑戰 · 六六歌2</h1>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">水晶男孩回來啦!</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
|
||||
<nav class="ebook-back-link content-container totoga2-split-crossnav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="timeline.html" class="btn" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="ebook.html" class="btn" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="readable.html" class="btn" aria-current="page" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="video.html" class="btn" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
<main class="content-container chronicle-reader" id="totoga2-reader" data-mode="scroll">
|
||||
<article class="chronicle-chapter active" id="challenge" data-title="無限挑戰">
|
||||
<!-- 序號一:第一列 container21(右欄 float:right)+ container22(左欄 float:left)→ 畫面左 01、右 02 -->
|
||||
|
||||
<!-- 序號二:第二列單一全寬 container11 -->
|
||||
<div class="container">
|
||||
<div class="container11">
|
||||
<img src="../assets/images/totoga2/web/cover.jpg" alt="六六歌2">
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div class="container22">
|
||||
</div>
|
||||
<div class="container21">
|
||||
<img src="" alt="六六歌2 電子書跨頁圖(序號一 · 右)">
|
||||
</div>
|
||||
</div>
|
||||
<h2>04 無限挑戰</h2>
|
||||
<p>《無限挑戰》是韓國綜藝史上指標性的真人秀節目。「星期六星期六是歌手(六六歌)」企劃,成為水晶男孩 2016 回歸舞台的關鍵起點。</p>
|
||||
<p>第一季掀起 90 年代懷舊熱潮,雖然水晶男孩未能完整出演,卻留下「總有一天要六人完整回到舞台」的遺憾伏筆。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="ssg2" data-title="六六歌第二季">
|
||||
<h2>06 六六歌第二季</h2>
|
||||
<p>第二季改成「為單一團體打造完整回歸敘事」,保密層級更高,連主持群都縮小到劉在錫與 HAHA,避免消息提前走漏。</p>
|
||||
<p>從開場的復古裝扮、試探式線索到真正揭曉團體身份,節目節奏在搞笑與懸念間拉開這場 16 年重逢序章。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="sechskies-profile" data-title="水晶男孩">
|
||||
<h2>08 水晶男孩</h2>
|
||||
<p>1997 出道後迅速登頂,與同世代頂流並列,短短三年創下極高銷量與舞台紀錄,卻在 2000 無預警解散,留下集體創傷。</p>
|
||||
<p>16 年間六人從未以水晶男孩名義完整合體,這次企劃不只是回憶,而是回應當年未說完的離別。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="gather" data-title="召集">
|
||||
<h2>10 召集</h2>
|
||||
<p>製作組先與隊長殷志源交涉,再透過隱藏攝影機確認成員意願。大家都希望重組,卻同時知道最困難的拼圖是離開演藝圈多年的高志溶。</p>
|
||||
<p>這個階段的重點不是舞台,而是「願不願意再次站在一起」的心理門檻。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="negotiate" data-title="正式交涉">
|
||||
<h2>11 正式交涉</h2>
|
||||
<p>主持人與成員深度對話,回顧解散緣由、舞台記憶、KTV 挑戰與游擊演唱會規則。笑鬧之間,團魂逐漸浮現。</p>
|
||||
<p>同時,節目也把高志溶議題正式擺上檯面:如果不是完整體,這次回歸是否還成立?</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="variables" data-title="變數">
|
||||
<h2>16 變數</h2>
|
||||
<p>排練期間接連出現傷病、手術需求與消息外流,原本理想的游擊演唱會計畫屢次被迫改寫,團隊陷入 B 計畫陰影。</p>
|
||||
<p>在體力與心理都被拉到極限的情況下,成員仍選擇撐住,只為把久違舞台交回給等待 16 年的小黃。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="surprise" data-title="驚喜">
|
||||
<h2>19 驚喜</h2>
|
||||
<p>當所有人幾乎接受「不完整」時,節目仍悄悄推進最後安排。高志溶與成員的情感張力在此段達到最高點。</p>
|
||||
<p>這份驚喜不是綜藝反轉,而是把六顆水晶的空位真正填回舞台。</p>
|
||||
</article>
|
||||
|
||||
<article class="chronicle-chapter" id="final-stage" data-title="登場">
|
||||
<h2>21 登場</h2>
|
||||
<p>眼罩揭開後,滿場黃海與哭聲同時湧現。從《請記得我》到安可,《離別曲》在那一晚變成了「重逢證詞」。</p>
|
||||
<p>2000 的缺憾,在 2016 終於補上。這一頁不是結束,而是團體與粉絲共同完成的回歸章節。</p>
|
||||
</article>
|
||||
</main>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<script src="../assets/js/totoga2.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,85 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|六六歌2 — 時間軸與紀實長文</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">
|
||||
<link rel="stylesheet" href="split-nav.css">
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page">
|
||||
<header class="map-archive-header">
|
||||
<div class="header-inner site-header-inner">
|
||||
<h1 class="main-title">無限挑戰 · 六六歌2</h1>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">水晶男孩回來啦!</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
|
||||
<nav class="ebook-back-link content-container totoga2-split-crossnav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="timeline.html" class="btn" aria-current="page" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="ebook.html" class="btn" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="readable.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="video.html" class="btn" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
|
||||
<div class="totoga2-reader-hub content-container ebook-main">
|
||||
<section class="story-archive totoga2-plot content-container" aria-labelledby="totoga2-plot-title">
|
||||
<h2 class="section-title" id="totoga2-plot-title">傳奇的轉折</h2>
|
||||
<div class="subtitle-wrap">
|
||||
<span class="sub-title">PLOT TWIST</span>
|
||||
</div>
|
||||
<p class="intro-text">
|
||||
與首頁相同的節點提要;點下方連結可跳到本頁「紀實長文」對應章節(八章皆在本頁,無需另開檔案)。
|
||||
</p>
|
||||
|
||||
<div class="merged-storyline">
|
||||
<article id="totoga2-special" class="story-node" data-era="六六歌">
|
||||
<h3>六六歌實錄</h3>
|
||||
<p>把懸念、試探與哭點縫在同一條時間軸上;很多人第一次真正把「水晶男孩」打進搜尋框,就是從這種瘋狂的剪輯節奏開始。</p>
|
||||
<p><a href="#ssg2">對照本頁幕後敘事 · 六六歌第二季</a></p>
|
||||
</article>
|
||||
<article id="totoga2-negotiate-card" class="story-node" data-era="交涉">
|
||||
<h3>命運的交涉</h3>
|
||||
<p>KTV、游擊演唱會規則、與其說講道理不如說把真心擺上桌面——交涉的不是合約字面,而是還願不願意再一次肩並肩。</p>
|
||||
<p><a href="#negotiate">讀本頁 · 正式交涉</a></p>
|
||||
</article>
|
||||
<article id="totoga2-complete" class="story-node" data-era="歸位">
|
||||
<h3>拼圖的歸位</h3>
|
||||
<p>變數一個個被排除之後,驚喜接上登場段落;缺一角舞台的視覺,終於對齊觀眾席上堅守的那片黃。</p>
|
||||
<p><a href="#gather">從本頁「召集」段開始補這條線</a></p>
|
||||
</article>
|
||||
<article id="totoga2-past" class="story-node" data-era="最初">
|
||||
<h3>巔峰與雨天</h3>
|
||||
<p>急凍、告別、各自的跑道——並不是要你沉浸遺憾,而是讓你懂:後來每一次亮燈,為什麼會更值得尖叫。</p>
|
||||
<p><a href="#sechskies-profile">讀本頁脈絡起點 · 水晶男孩</a></p>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<script src="../assets/js/totoga2.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,121 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-TW">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>水晶男孩|六六歌2 — 節目影片</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">
|
||||
<link rel="stylesheet" href="split-nav.css">
|
||||
</head>
|
||||
|
||||
<body class="ebook-ssg2-page totoga2-page totoga2-video-copy-page">
|
||||
<nav class="portal-nav" aria-label="水晶男孩推廣部導覽" data-portal-nav></nav>
|
||||
|
||||
<canvas id="particles"></canvas>
|
||||
|
||||
<nav class="ebook-back-link content-container totoga2-split-crossnav" aria-label="六六歌2 閱讀入口">
|
||||
<a href="timeline.html" class="btn" title="時間軸與紀實八章長文單頁">時間軸</a>
|
||||
<a href="ebook.html" class="btn" title="紀實電子書內容獨立成頁">電子書</a>
|
||||
<a href="readable.html" class="btn" title="單頁整合:影片/電子書/長文模式切換與八章錨點">圖文好讀版</a>
|
||||
<a href="video.html" class="btn" aria-current="page" title="無限挑戰 · 六六歌2 嵌入影片單頁">影片</a>
|
||||
</nav>
|
||||
|
||||
<div class="content-container ebook-main">
|
||||
<section class="ebook-intro section" aria-labelledby="ebook-bilivideo-heading">
|
||||
<h2 class="section-title" id="ebook-bilivideo-heading">節目影片</h2>
|
||||
|
||||
<div id="bilivideo-tabs" class="bilivideo-tabs__shell">
|
||||
<!-- tablist 在 DOM 上須先於 iframe,否則 B 站播放器合成層易蓋住下方按鈕文字;畫面順序改由 CSS flex order 控制 -->
|
||||
<nav class="bilivideo-episode-nav" role="tablist" aria-label="節目影片集數">
|
||||
<button type="button" class="btn bilivideo-episode-nav__tab bilivideo-episode-nav__tab--active"
|
||||
role="tab" id="bilivideo-tab-1" aria-controls="bilivideo-panel-1"
|
||||
aria-selected="true">上集</button>
|
||||
<button type="button" class="btn bilivideo-episode-nav__tab" role="tab" id="bilivideo-tab-2"
|
||||
aria-controls="bilivideo-panel-2" aria-selected="false" tabindex="-1">中集</button>
|
||||
<button type="button" class="btn bilivideo-episode-nav__tab" role="tab" id="bilivideo-tab-3"
|
||||
aria-controls="bilivideo-panel-3" aria-selected="false" tabindex="-1">下集</button>
|
||||
</nav>
|
||||
<div class="bilivideo-tabs__panels">
|
||||
<div class="bilivideo-tabs__panel" role="tabpanel" id="bilivideo-panel-1"
|
||||
aria-labelledby="bilivideo-tab-1">
|
||||
<div class="bilivideo-frame">
|
||||
<iframe title="無限挑戰 六六歌2 上集"
|
||||
src="//player.bilibili.com/player.html?isOutside=true&aid=12288323&bvid=BV1Yx411B7TC&cid=20353565&p=1"
|
||||
scrolling="no" border="0" frameborder="no" framespacing="0"
|
||||
allowfullscreen="true"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bilivideo-tabs__panel" role="tabpanel" id="bilivideo-panel-2"
|
||||
aria-labelledby="bilivideo-tab-2" hidden>
|
||||
<div class="bilivideo-frame">
|
||||
<iframe title="無限挑戰 六六歌2 中集"
|
||||
data-src="//player.bilibili.com/player.html?isOutside=true&aid=12288323&bvid=BV1Yx411B7TC&cid=20353561&p=2"
|
||||
scrolling="no" border="0" frameborder="no" framespacing="0"
|
||||
allowfullscreen="true"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bilivideo-tabs__panel" role="tabpanel" id="bilivideo-panel-3"
|
||||
aria-labelledby="bilivideo-tab-3" hidden>
|
||||
<div class="bilivideo-frame">
|
||||
<iframe title="無限挑戰 六六歌2 下集"
|
||||
data-src="//player.bilibili.com/player.html?isOutside=true&aid=12288323&bvid=BV1Yx411B7TC&cid=20353562&p=3"
|
||||
scrolling="no" border="0" frameborder="no" framespacing="0"
|
||||
allowfullscreen="true"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<p class="ebook-back-link content-container">
|
||||
<a href="../index.html#story" class="btn">回到首頁 · 傳奇的轉折</a>
|
||||
</p>
|
||||
|
||||
<footer>
|
||||
<p>SECHSKIES Fanpage © 2026 - 黃色氣球永遠飄揚</p>
|
||||
<a href="https://jekkinoopy.github.io/Portfolio/" class="studio-link" target="_blank">
|
||||
Design by <span class="mark_b">Jekkinoopy Studio</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<script src="../assets/js/particles.js"></script>
|
||||
<script src="../assets/js/portal-nav.js"></script>
|
||||
<script>
|
||||
(function () {
|
||||
var root = document.getElementById("bilivideo-tabs");
|
||||
if (!root) return;
|
||||
var tabs = Array.prototype.slice.call(root.querySelectorAll('[role="tab"]'));
|
||||
var panels = Array.prototype.slice.call(root.querySelectorAll('[role="tabpanel"]'));
|
||||
|
||||
function activate(index) {
|
||||
tabs.forEach(function (tab, i) {
|
||||
var on = i === index;
|
||||
tab.setAttribute("aria-selected", on ? "true" : "false");
|
||||
tab.tabIndex = on ? 0 : -1;
|
||||
if (on) tab.classList.add("bilivideo-episode-nav__tab--active");
|
||||
else tab.classList.remove("bilivideo-episode-nav__tab--active");
|
||||
panels[i].hidden = !on;
|
||||
if (on) {
|
||||
var iframe = panels[i].querySelector("iframe[data-src]");
|
||||
if (iframe && !iframe.getAttribute("src")) {
|
||||
iframe.setAttribute("src", iframe.getAttribute("data-src"));
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
tabs.forEach(function (tab, i) {
|
||||
tab.addEventListener("click", function () {
|
||||
activate(i);
|
||||
});
|
||||
});
|
||||
activate(0);
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
Reference in New Issue
Block a user