Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 传递createObjectURL_Javascript_Url_Audio_Fileapi - Fatal编程技术网

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);
    })
});