预览音乐可拖动进度条
This commit is contained in:
parent
1feccfc185
commit
a62e0119fd
@ -792,8 +792,10 @@ editor_ui_wrapper = function (editor) {
|
||||
}
|
||||
// 试听音频
|
||||
if (one.endsWith('.mp3') || one.endsWith('.wmv') || one.endsWith('.ogg') || one.endsWith('.wav')) {
|
||||
html += "<button onclick='editor.uievent._previewMaterialAudio(this)' style='margin-left: 10px'>试听</button>";
|
||||
html += '<br style="display:none"/><audio controls preload="none" src="'+directory+one+'" style="display:none; max-width: 100%"></audio>';
|
||||
html += "<button onclick='editor.uievent._previewMaterialAudio(this)' style='margin-left: 10px'>播放</button>";
|
||||
html += `<small style='display:none; margin-left: 15px'>0:00 / 0:00</small><br style="display:none"/>
|
||||
<audio preload="none" src="${directory+one}" ontimeupdate="editor.uievent._previewMaterialAudio_onTimeUpdate(this)"></audio>
|
||||
<progress value="0" max="1" style="display:none; width:100%" onclick="editor.uievent._previewMaterialAudio_seek(this, event)"></progress>`;
|
||||
}
|
||||
html += '<br/>';
|
||||
});
|
||||
@ -824,19 +826,41 @@ editor_ui_wrapper = function (editor) {
|
||||
}
|
||||
|
||||
uievent._previewMaterialAudio = function (button) {
|
||||
var br = button.nextElementSibling;
|
||||
var span = button.nextElementSibling;
|
||||
var br = span.nextElementSibling;
|
||||
var audio = br.nextElementSibling;
|
||||
var progress = audio.nextElementSibling;
|
||||
if (br.style.display == 'none') {
|
||||
button.innerText = '折叠';
|
||||
button.innerText = '暂停';
|
||||
br.style.display = 'block';
|
||||
audio.style.display = 'block';
|
||||
progress.style.display = 'block';
|
||||
span.style.display = 'inline';
|
||||
audio.play();
|
||||
} else {
|
||||
button.innerText = '试听';
|
||||
button.innerText = '播放';
|
||||
br.style.display = 'none';
|
||||
audio.style.display = 'none';
|
||||
progress.style.display='none';
|
||||
span.style.display = 'none';
|
||||
audio.pause();
|
||||
}
|
||||
}
|
||||
|
||||
uievent._previewMaterialAudio_onTimeUpdate = function (audio) {
|
||||
var _format = function (time) { return parseInt(time/60) + ":" + core.setTwoDigits(parseInt(time) % 60); }
|
||||
if (audio.duration > 0) {
|
||||
audio.previousElementSibling.previousElementSibling.innerText = _format(audio.currentTime) + " / " + _format(audio.duration);
|
||||
audio.nextElementSibling.setAttribute('value', audio.currentTime / audio.duration);
|
||||
}
|
||||
}
|
||||
|
||||
uievent._previewMaterialAudio_seek = function (element, event) {
|
||||
var audio = element.previousElementSibling;
|
||||
var value = event.offsetX * element.max / element.offsetWidth;
|
||||
element.setAttribute("value", value);
|
||||
audio.currentTime = audio.duration * value;
|
||||
if (audio.paused) audio.play();
|
||||
}
|
||||
|
||||
editor.constructor.prototype.uievent=uievent;
|
||||
|
||||
}
|
||||
@ -36,9 +36,7 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
|
||||
"bomb.mp3",
|
||||
"centerFly.mp3"
|
||||
],
|
||||
"fonts": [
|
||||
"number"
|
||||
],
|
||||
"fonts": [],
|
||||
"nameMap": {
|
||||
"背景图.jpg": "bg.jpg",
|
||||
"背景音乐.mp3": "bgm.mp3"
|
||||
|
||||
Binary file not shown.
@ -67,7 +67,10 @@ def static_file(path):
|
||||
if not os.path.isfile(path):
|
||||
abort(404)
|
||||
return None
|
||||
return Response(get_file(path), mimetype = get_mimetype(path))
|
||||
mimetype = get_mimetype(path)
|
||||
response = Response(get_file(path), mimetype = mimetype)
|
||||
if mimetype.startswith('audio/'): response.headers["Accept-Ranges"] = "bytes"
|
||||
return response
|
||||
|
||||
def process_request():
|
||||
data = request.get_data() # str in py2 and bytes in py3
|
||||
|
||||
@ -218,7 +218,7 @@
|
||||
max-height: 1.6em;
|
||||
}
|
||||
#statusBar span{
|
||||
font: bold italic 1.1em number, Verdana;
|
||||
font: bold italic 1.1em Verdana;
|
||||
display: inline;
|
||||
}
|
||||
#statusBar p {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user