小 |
小 |
||
| 第14行: | 第14行: | ||
{{Html5Media|url=https://gh-proxy.com/raw.githubusercontent.com/Rizline-Chinese-Wiki/rizline-song-preview/main/%E3%80%90Utau%E7%BF%BB%E5%94%B1%E2%A7%B8%E5%8E%9F%E5%88%9BPV%E3%80%91%E3%83%A1%E3%83%AB%E3%83%86%E3%82%A3%E3%83%A9%E3%83%B3%E3%83%89%E3%83%8A%E3%82%A4%E3%83%88%E3%83%A1%E3%82%A2%E3%80%901%C3%9740%E3%80%91%20[BV1uKTyzkEr4_p1].mp4}} | {{Html5Media|url=https://gh-proxy.com/raw.githubusercontent.com/Rizline-Chinese-Wiki/rizline-song-preview/main/%E3%80%90Utau%E7%BF%BB%E5%94%B1%E2%A7%B8%E5%8E%9F%E5%88%9BPV%E3%80%91%E3%83%A1%E3%83%AB%E3%83%86%E3%82%A3%E3%83%A9%E3%83%B3%E3%83%89%E3%83%8A%E3%82%A4%E3%83%88%E3%83%A1%E3%82%A2%E3%80%901%C3%9740%E3%80%91%20[BV1uKTyzkEr4_p1].mp4}} | ||
{{Html5Media|url=https://pan.rizwiki.cn/d/%E9%AB%98%E9%80%9F/%E6%B5%8B%E8%AF%95%E6%96%87%E4%BB%B6%E5%A4%B9/%E3%80%90Utau%E7%BF%BB%E5%94%B1%E2%A7%B8%E5%8E%9F%E5%88%9BPV%E3%80%91%E3%83%A1%E3%83%AB%E3%83%86%E3%82%A3%E3%83%A9%E3%83%B3%E3%83%89%E3%83%8A%E3%82%A4%E3%83%88%E3%83%A1%E3%82%A2%E3%80%901%C3%9740%E3%80%91%20%5BBV1uKTyzkEr4_p1%5D.mp4?sign=V90_EzJjzDo8mAUhOXsII4fJYyy-R1V2fpHdXK8nr2s=:0}} | {{Html5Media|url=https://pan.rizwiki.cn/d/%E9%AB%98%E9%80%9F/%E6%B5%8B%E8%AF%95%E6%96%87%E4%BB%B6%E5%A4%B9/%E3%80%90Utau%E7%BF%BB%E5%94%B1%E2%A7%B8%E5%8E%9F%E5%88%9BPV%E3%80%91%E3%83%A1%E3%83%AB%E3%83%86%E3%82%A3%E3%83%A9%E3%83%B3%E3%83%89%E3%83%8A%E3%82%A4%E3%83%88%E3%83%A1%E3%82%A2%E3%80%901%C3%9740%E3%80%91%20%5BBV1uKTyzkEr4_p1%5D.mp4?sign=V90_EzJjzDo8mAUhOXsII4fJYyy-R1V2fpHdXK8nr2s=:0}} | ||
<html> | |||
<head> | |||
<meta charset="UTF-8"> | |||
<style> | |||
body { | |||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; | |||
margin: 0; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
min-height: 100vh; | |||
color: #f0f0f0; | |||
} | |||
table { | |||
border-radius: 12px; | |||
overflow: hidden; | |||
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5); | |||
border: 1px solid #444; | |||
max-width: 960px; | |||
background-color: #2c2d30; | |||
} | |||
td { | |||
transition: background-color 0.4s ease; | |||
padding: 0; | |||
} | |||
#difficulty { | |||
font-size: 1.5em; | |||
font-weight: bold; | |||
padding: 15px 0; | |||
letter-spacing: 2px; | |||
user-select: none; | |||
transition: background-color 0.4s ease, transform 0.1s ease; | |||
} | |||
#difficulty:hover { | |||
opacity: 0.9; | |||
} | |||
#difficulty:active { | |||
transform: scale(0.98); | |||
} | |||
#ratio { | |||
font-size: 1.2em; | |||
font-weight: 600; | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
user-select: none; | |||
transition: background-color 0.3s ease, transform 0.1s ease; | |||
} | |||
#ratio:hover { | |||
background-color: #556677 !important; | |||
} | |||
#ratio:active { | |||
transform: scale(0.95); | |||
} | |||
#output { | |||
background-color: #000; | |||
line-height: 0; | |||
} | |||
video.html5media-video { | |||
width: 100%; | |||
height: 100%; | |||
object-fit: contain; | |||
display: block; | |||
} | |||
</style> | |||
</head> | |||
<body> | |||
<table width="100%" style="border:none; border-collapse:collapse;"> | |||
<tr> | |||
<td colspan="2" style="text-align:center; background-color:#57E4C4;"> | |||
<div id="difficulty" onclick="cycleDifficulty(this)" data-states='["EZ 1", "HD 6", "IN 11"]' data-current="0" style="cursor:pointer;">EZ 2</div> | |||
</td> | |||
</tr> | |||
<tr style="height:300px"> | |||
<td width="15%" onclick="cycleRatio(document.getElementById('ratio'))" style="text-align:center; background-color:#ABCDEF; cursor:pointer;"> | |||
<div id="ratio" data-states='["16:9", "4:3"]' data-current="0" style="height:100%; cursor:pointer;">16:9</div> | |||
</td> | |||
<td style="height:100%; position:relative"> | |||
<span id="output" style="display:block; height:300px; overflow:hidden;"></span> | |||
</td> | |||
</tr> | |||
</table> | |||
<script> | |||
const songName = "Pastel Lines" | |||
const difficultyColors = { | |||
"EZ": "#57E4C4", | |||
"HD": "#FDBA61", | |||
"IN": "#FE8661", | |||
"AT": "#4C364B" | |||
}; | |||
function cycleDifficulty(element) { | |||
const states = JSON.parse(element.getAttribute('data-states')) | |||
const current = parseInt(element.getAttribute('data-current')) | |||
const next = (current + 1) % states.length | |||
element.textContent = states[next] | |||
element.setAttribute('data-current', next.toString()) | |||
const difficultyType = states[next].split(' ')[0] | |||
const color = difficultyColors[difficultyType] || '#FFFFFF' | |||
element.style.backgroundColor = color | |||
element.parentElement.style.backgroundColor = color | |||
updateOutput() | |||
} | |||
function cycleRatio(element) { | |||
const states = JSON.parse(element.getAttribute('data-states')) | |||
const current = parseInt(element.getAttribute('data-current')) | |||
const next = (current + 1) % states.length | |||
element.textContent = states[next] | |||
element.setAttribute('data-current', next.toString()) | |||
updateOutput() | |||
} | |||
function updateOutput() { | |||
const difficultyDiv = document.getElementById('difficulty') | |||
const ratioDiv = document.getElementById('ratio') | |||
const difficulty = difficultyDiv.textContent.split(' ')[0] | |||
const ratio = ratioDiv.textContent.replace(':', '-') | |||
const videoUrl = `https://raw.githubusercontent.com/Rizline-Chinese-Wiki/rizline-song-preview/main/${ratio}_${songName}_${difficulty}.mp4` | |||
document.getElementById('output').innerHTML = ` | |||
<video class="html5media-video" src="${videoUrl}" controls preload="metadata" loading="lazy" style="height:100%; object-fit:contain;"></video> | |||
` | |||
} | |||
document.addEventListener('DOMContentLoaded', function () { | |||
const diffDiv = document.getElementById('difficulty') | |||
const firstDiff = JSON.parse(diffDiv.getAttribute('data-states'))[0]; | |||
const diffType = firstDiff.split(' ')[0] | |||
diffDiv.textContent = firstDiff | |||
diffDiv.style.backgroundColor = difficultyColors[diffType] | |||
diffDiv.parentElement.style.backgroundColor = difficultyColors[diffType] | |||
updateOutput(); | |||
}); | |||
</script> | |||
</body> | |||
</html> | |||
保存测试 | 保存测试 | ||
2025年7月8日 (二) 22:28的版本
艾拉单推鸽(*¯ㅿ¯*;) 咕
/* ===== 2025.4.13 ===== */ 某人因不会修bug而下架了ta心爱的可视化编辑 R.I.P
/* ===== 2025.4.13 过了几分钟... ===== */ 草报错了.. 算了,晚安 zzz
以下是测试-------
这是啥
|
EZ 2
|
|
|
16:9
|
|
保存测试