SCP链接跳转工具
2023年12月23日
修订 12
评分
9
↑ 9
↓ 0
支持率
100%
总票数 9
Wilson 95% 下界
70.1%
在相同票数下更稳健的支持率估计
争议指数
0.000
评分趋势
按周聚合 加载图表中...
最近修订
1 / 5
最近投票
1 / 1
2024-09-03
2024-09-03
2024-09-03
2024-09-03
2024-09-03
2024-09-03
2024-09-03
2024-09-03
2024-09-03
相关页面
暂无推荐
页面源码
[[iftags +组件]]
++ 这是什么?
鉴于目前(2023/12/23)Wikidot出现的错误,大部分站外链接或者浏览器输入链接都无法访问对应的页面。该工具旨在提供临时的解决方案,允许用户可以快速访问任意Wikidot页面,或生成该页面的可用链接。
本跳转工具基于[[*user hoah2333]]的[[[scp-redirecter|SCP链接重定向模块]]]制作,非常感谢!
++ 使用方法:
在你的页面中添加以下代码:
> @@[[include :scp-wiki-cn:component:scp-redirecter-tool]]@@
该组件支持最多五个自定义的Wikidot站点。添加方式如下:
> @@[[include :scp-wiki-cn:component:scp-redirecter-tool@@
> @@|custom1=name@@ ##blue|(例,scp-int)##
> @@|custom2=name2@@ ##blue|(如不需要则删除此行)##
> @@|custom3=name3@@
> @@|custom4=name4@@
> @@|custom5=name5@@
> @@]]@@
-----
[[/iftags]]
[[html]]
<style>
body {
font-family:Consolas;font-size: 12.8px;color: #333;
}
.link-container {
opacity:0;position:absolute;z-index:-10;top:-1em;
}
</style>
<body>
<div style="text-align:center">
<div id="url-type">
<input type="radio" name="url-sel" value="scp-wiki-cn" onclick="toggleSite()" checked>中文维基
<input type="radio" name="url-sel" value="scpsandboxcn" onclick="toggleSite()">沙盒
<input type="radio" name="url-sel" value="scp-wiki" onclick="toggleSite()">英文维基
</div>
<p>
<input type="checkbox" id="isHttps" onclick="toogleMethod()" checked>使用HTTPS(如果仍然报错,请取消勾选此项重试)
</p>
<p>
<span id="method">https://</span>
<input type="text" id="site" name="site" placeholder="site" size="25" style="display:none" >
<span id="url-pre">scp-wiki.wikidot.com/</span>
<input type="text" id="url" name="url" placeholder="URL" size="25" >
</p>
<p id="siteError" style="display:none">站点名称不能为空!</p>
<p>
<button onclick="Go()">打开</button>
<button onclick="ViewLink()">生成链接</button>
</p>
<p>
<span id="generated-link"></span>
<button onclick="CopyLink()" id="copybtn" style="display:none">复制链接</button>
</p>
<input id="link-container" class="link-container">
</div>
</body>
<script language="javascript">
const customSites = ["{$custom1}", "{$custom2}", "{$custom3}", "{$custom4}", "{$custom5}"];
const REDIRECTOR = 'https://hoah2333.github.io/Archived-works/SCP/scp-redirecter/main.html';
const REDIRECTOR_HTTP = 'http://91secretsandbox.wdfiles.com/local--html/scp-redirect/17f5724c18b3bb2dd26afb92de06d7b2c77dbc2e-14723616241851710975/91secretsandbox.wikidot.com/';
function createRadio(container, value, text) {
container.innerHTML += '<input type="radio" name="url-sel" value="' + value + '" onclick="toggleSite()">' + text;
}
function populateSites() {
container = document.getElementById("url-type");
customSites.forEach( (v,i) => {
if (!v.includes("$")) {
createRadio(container, v, v);
}
})
createRadio(container, "other", "其他站点");
}
function getSiteSelection() {
var urltype = document.getElementsByName('url-sel');
for (element of urltype) {
if (element.checked){
return element.value;
}
}
}
function toogleMethod(){
isHttps = document.getElementById('isHttps').checked;
document.getElementById('method').innerText = isHttps ? "https://" : "http://";
}
function toggleSite(){
siteSelection = getSiteSelection();
if (siteSelection == "other") {
document.getElementById('site').style.display = 'inline';
}
else {
document.getElementById('site').style.display = 'none';
}
document.getElementById('url-pre').innerHTML = (siteSelection != "other" ? siteSelection : '') + '.wikidot.com/';
}
function getLink(){
siteSelection = getSiteSelection();
site = siteSelection != "other" ? siteSelection : document.getElementById('site').value;
url=document.getElementById("url").value;
if (!site || site == "") {
document.getElementById('siteError').style.display = 'inline';
return "";
}
else {
document.getElementById('siteError').style.display = 'none';
}
isHttps = document.getElementById('isHttps').checked;
result = isHttps ? REDIRECTOR : REDIRECTOR_HTTP;
result += '?site=' + site;
if (url && url != ""){
result += '&name=' + url;
}
if (!isHttps){
result += '&method=http';
}
return result;
}
function Go(){
result = getLink();
if (result != "") {
document.getElementById("site").value = "";
document.getElementById("url").value = "";
window.open(result);
}
}
function ViewLink(){
result = getLink();
document.getElementById("generated-link").innerHTML = result;
document.getElementById("copybtn").style.display = result != "" ? "inline" : "none";
document.getElementById("link-container").value = result;
}
function CopyLink(){
document.getElementById("link-container").select();
document.execCommand("copy");
}
populateSites();
toggleSite();
</script>
[[/html]]