如何上传文件并在javascript中获取其内容。例如,我想上传一个mp3并在html5音频标签中播放它,而不是在服务器上。这可能吗?
答案 0 :(得分:2)
您可以使用File API从JavaScript中读取本地文件。我认为只有Firefox> = 3.6实现了它,它仍然是一个工作草案。
演示(如果你在Firefox中试用它,它只支持.wav和.ogg音频文件):
<input id="input" type="file">
<button onclick="play()">play</button>
<script>
function play() {
var file = document.getElementById("input").files[0];
var reader = new FileReader();
reader.onload = function(e) {
var audio = new Audio(e.target.result);
audio.play();
}
reader.readAsDataURL(file);
}
</script>
另见developer.mozilla.org/en/Using_files_from_web_applications
答案 1 :(得分:1)
上传文件时,javascript无法(没有插件支持)获得对文件的访问权限。要做你想要的,你必须实际上传文件到服务器,然后让你的javascript成为服务器的客户端来检索文件,然后播放它。