Javascript 传递createObjectURL
我想将由Javascript 传递createObjectURL,javascript,url,audio,fileapi,Javascript,Url,Audio,Fileapi,我想将由window.URL.createObjectURL(文件)创建的地址传递给dancer.js,但我得到get blob:http%3A//localhost/b847c5cd-aaa7-4ce0-8ff8-c13c6fc3505a.mp3 404(未找到) 我设法用通过文件输入选择的文件创建音频元素,但dancer.js根本找不到该文件。。。有什么想法吗?(下面是我如何传递ObjectURL) $(文档).ready(函数(){ $(“#提交”)。单击(函数(){ var file=d
window.URL.createObjectURL(文件)
创建的地址传递给dancer.js,但我得到get blob:http%3A//localhost/b847c5cd-aaa7-4ce0-8ff8-c13c6fc3505a.mp3 404(未找到)
我设法用通过文件输入选择的文件创建音频元素,但dancer.js根本找不到该文件。。。有什么想法吗?(下面是我如何传递ObjectURL)
$(文档).ready(函数(){
$(“#提交”)。单击(函数(){
var file=document.getElementById(“文件”).files[0];
$('body')。附加(“”)
舞者(window.URL.createObjectURL(文件));
})
})
查看方法,它看起来像加载
方法将引用一个”)
//获取对我们创建的音频元素的引用
audioElement=$('#audio')[0];
舞者负荷(音频元素);
})
});
查看方法,它看起来像加载
方法将引用一个”)
//获取对我们创建的音频元素的引用
audioElement=$('#audio')[0];
舞者负荷(音频元素);
})
});
您应该使用createObjectURL
一次,并将地址存储在变量中,而不是每次使用时都调用它。每次使用同一文件时为其创建一个新的对象URL为.thx,但没有帮助:)您应该使用createObjectURL
一次,并将地址存储在变量中,而不是每次使用时都调用它。每次使用同一文件时,都为该文件创建一个新的对象URL是.thx,但没有帮助:)
$(document).ready(function(){
$("#submit").click(function(){
var file = document.getElementById("file").files[0];
$('body').append('<audio id="audio" controls="controls"></audio>');
$('#audio').append('<source src='+window.URL.createObjectURL(file)+' type=audio/mpeg />')
$('body').append('<a href='+window.URL.createObjectURL(file)+'>link</a>')
dancer(window.URL.createObjectURL(file));
})
})
$(document).ready(function() {
var dancer = new Dancer(),
fileURL;
$("#submit").click(function(){
var audioElement,
file = document.getElementById("file").files[0];
fileURL = window.URL.createObjectURL(file);
// remove any preexisting instances of the audio tag
$('#audio').remove();
// Revoke any previously used file URL so it doesn't
// take up memory anymore.
window.URL.revokeObjectURL(fileURL);
$('body').append('<audio id="audio" controls="controls"></audio>');
$('#audio').append('<source src='+ fileURL +' type=audio/mpeg />')
$('body').append('<a href=' + fileURL +'>link</a>')
// get a reference to the audio element we created
audioElement = $('#audio')[0];
dancer.load(audioElement);
})
});