| 1 | <!DOCTYPE html> |
| 2 | <html lang="zh-CN"><head><meta charset="utf-8"><title>Code</title> |
| 3 | <link rel="stylesheet" href="../../assets/fonts.css"> |
| 4 | <link rel="stylesheet" href="../../assets/base.css"> |
| 5 | <link rel="stylesheet" id="theme-link" href="../../assets/themes/tokyo-night.css"> |
| 6 | <link rel="stylesheet" href="../../assets/animations/animations.css"> |
| 7 | <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/highlight.js@11.10.0/styles/tokyo-night-dark.min.css"> |
| 8 | <script src="https://cdn.jsdelivr.net/npm/highlight.js@11.10.0/lib/core.min.js"></script> |
| 9 | <script src="https://cdn.jsdelivr.net/npm/highlight.js@11.10.0/lib/languages/javascript.min.js"></script> |
| 10 | <script>addEventListener('DOMContentLoaded',()=>{hljs.registerLanguage('javascript',window.hljsLangJavascript||window.hljs.getLanguage('javascript'));document.querySelectorAll('pre code').forEach(el=>hljs.highlightElement(el))})</script> |
| 11 | </head><body class="single"> |
| 12 | <div class="deck"><section class="slide is-active" data-title="Code"> |
| 13 | <p class="kicker">Snippet · 运行时核心</p> |
| 14 | <h2 class="h2">按一下键盘,幻灯片就跑起来了</h2> |
| 15 | <pre class="card mt-m" style="padding:24px"><code class="language-javascript">// runtime.js — keyboard-driven deck |
| 16 | function go(n) { |
| 17 | n = Math.max(0, Math.min(total - 1, n)); |
| 18 | slides.forEach((s, i) => { |
| 19 | s.classList.toggle('is-active', i === n); |
| 20 | }); |
| 21 | idx = n; |
| 22 | barFill.style.width = ((n + 1) / total * 100) + '%'; |
| 23 | history.replaceState(null, '', '#/' + (n + 1)); |
| 24 | } |
| 25 | |
| 26 | document.addEventListener('keydown', (e) => { |
| 27 | if (e.key === 'ArrowRight' || e.key === ' ') go(idx + 1); |
| 28 | if (e.key === 'ArrowLeft') go(idx - 1); |
| 29 | if (e.key === 't') cycleTheme(); |
| 30 | });</code></pre> |
| 31 | </section></div> |
| 32 | <script src="../../assets/runtime.js"></script> |
| 33 | </body></html> |
| 34 |