diff options
| author | Eltrac <eltrac@vmi3030963.contaboserver.net> | 2026-02-10 13:10:33 +0800 |
|---|---|---|
| committer | Eltrac <eltrac@vmi3030963.contaboserver.net> | 2026-02-10 13:10:33 +0800 |
| commit | f7424a86dcf0216da0037b4c78f935f3f5204806 (patch) | |
| tree | 8f53e70399acf1168e63b2e367d2f919a43c2224 | |
| parent | cf4a82b644e2be698f81d624fc6e6aaad5bd3125 (diff) | |
| parent | 213afd65030025ae93b98401e8544dcbb54ad68d (diff) | |
Merge branch 'master' of https://src.eltr.ac/eltrac/geedeapro
| -rw-r--r-- | assets/js/fediform.js | 81 | ||||
| -rw-r--r-- | layouts/stats.html | 2 |
2 files changed, 52 insertions, 31 deletions
diff --git a/assets/js/fediform.js b/assets/js/fediform.js index f257d775..da5055ac 100644 --- a/assets/js/fediform.js +++ b/assets/js/fediform.js @@ -1,45 +1,66 @@ document.addEventListener("DOMContentLoaded", () => { - // toggle action area - function toggleActionArea() { - const actionArea = document.getElementById('action-area'); - actionArea.classList.toggle('hidden'); - } - document.getElementById("action-area-btn").addEventListener("click", toggleActionArea) - // Close action area when clicking outside - document.addEventListener('click', function(event) { - const actionArea = document.getElementById('action-area'); - const toggleBtn = event.target.closest('#action-area-btn'); - - if (!toggleBtn && !actionArea.contains(event.target)) { - actionArea.classList.add('hidden'); + const actionArea = document.getElementById('action-area'); + if (actionArea) { + // toggle action area + function toggleActionArea() { + actionArea.classList.toggle('hidden'); + } + document.getElementById("action-area-btn").addEventListener("click", toggleActionArea) + // Close action area when clicking outside + document.addEventListener('click', function(event) { + const actionArea = document.getElementById('action-area'); + const toggleBtn = event.target.closest('#action-area-btn'); + + if (!toggleBtn && !actionArea.contains(event.target)) { + actionArea.classList.add('hidden'); + } + }); + // toggle action area + function toggleActionArea() { + actionArea.classList.toggle('hidden'); } - }); + document.getElementById("action-area-btn").addEventListener("click", toggleActionArea) + // Close action area when clicking outside + document.addEventListener('click', function(event) { + const actionArea = document.getElementById('action-area'); + const toggleBtn = event.target.closest('#action-area-btn'); + + if (!toggleBtn && !actionArea.contains(event.target)) { + actionArea.classList.add('hidden'); + } + }); + } // open toot in fediverse const instanceInput = document.getElementById('fediverse-instance') - const savedInstance = localStorage.getItem("geedeapro.fediInstance") - if (savedInstance) instanceInput.value = savedInstance + if (instanceInput) { + const savedInstance = localStorage.getItem("geedeapro.fediInstance") + if (savedInstance) instanceInput.value = savedInstance - function openInFediverse() { - const instance = instanceInput.value.trim(); + function openInFediverse() { + const instance = instanceInput.value.trim(); - let url = tootUrl - if (instance) { - url = 'https://' + instance + '/authorize_interaction?uri=' + encodeURIComponent(tootUrl); - // save instance url to localStorage - localStorage.setItem("geedeapro.fediInstance", instance) + let url = tootUrl + if (instance) { + url = 'https://' + instance + '/authorize_interaction?uri=' + encodeURIComponent(tootUrl); + // save instance url to localStorage + localStorage.setItem("geedeapro.fediInstance", instance) + } + window.open(url, '_blank'); } - window.open(url, '_blank'); + + document.getElementById("fediform-button").addEventListener("click", openInFediverse) } - document.getElementById("fediform-button").addEventListener("click", openInFediverse) // copy toot link: const copyBtn = document.getElementById("fediform-copy-button") - function copyTootLink() { - navigator.clipboard.writeText(tootUrl) - copyBtn.innerText = '✅' - setTimeout(() => copyBtn.innerText = '📋', 3000) + if (copyBtn) { + function copyTootLink() { + navigator.clipboard.writeText(tootUrl) + copyBtn.innerText = '✅' + setTimeout(() => copyBtn.innerText = '📋', 3000) + } + copyBtn.addEventListener("click", copyTootLink) } - copyBtn.addEventListener("click", copyTootLink) }) diff --git a/layouts/stats.html b/layouts/stats.html index f02b620d..7dd82717 100644 --- a/layouts/stats.html +++ b/layouts/stats.html @@ -23,7 +23,7 @@ <h2>内部链接图谱</h2> <p>站内各个页面之间通过超链接建立起来的联系,你可以通过视觉化的双向链接逛逛我的博客。图谱可以缩放和拖拽,你也可以<a href="/graph" style="text-decoration: underline;">点击这里</a>全屏浏览。</p> <div class="outbox small"> - <iframe src="https://geedea.pro/graph" + <iframe src="https://www.geedea.pro/graph.html" style="width:100%;height: 30rem;border-radius:5px;border:none"></iframe> </div> </section> |
