JavaScript运行时错误:未指定的错误

JavaScript运行时错误:未指定的错误,javascript,runtime-error,Javascript,Runtime Error,我的要求是返回数据URL。但是,当我运行应用程序时,出现了一个运行时错误: JavaScript运行时错误:未指定的错误 这是我使用的代码。临时路径是映像位置所在的路径 var canvas = document.createElement("canvas"); var context = canvas.getContext("2d"); var img = new Image(); img.src = "@tempPath";

我的要求是返回数据URL。但是,当我运行应用程序时,出现了一个运行时错误:

JavaScript运行时错误:未指定的错误

这是我使用的代码。临时路径是映像位置所在的路径

var canvas = document.createElement("canvas");   
var context = canvas.getContext("2d");         
var img = new Image();         
img.src = "@tempPath";                 
context.drawImage(img, 40, 40);         
var dataURL = canvas.toDataURL("image/jpeg");         
alert(dataURL);'

尝试以下代码,它对我有效:

<body>
    <canvas id="myCanvas"></canvas>
    <img id="profileImg" alt=""/>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function() {
            drawImg();
        });
        function drawImg() {
            try {
                var canvas = document.getElementById("myCanvas");
                var context = canvas.getContext("2d");
                var img = new Image();
                img.src = $('#profileImg');
                context.drawImage(img, 40, 40);
                var dataURL = canvas.toDataURL("image/jpeg");
                alert(dataURL);
            } catch (e) {
                if (e.name == "NS_ERROR_NOT_AVAILABLE") {
                    // This is a bug in Firefox. The easiest fix is to simply keep trying until the error goes away, 
                    //since no event fires at the correct time.
                    // Wait before trying again; you can change the length of this delay.
                    setTimeout(drawImg, 100);
                } else {
                    throw e;
                }
            }
        }
    </script>
</body> 

$(文档).ready(函数(){
drawImg();
});
函数drawImg(){
试一试{
var canvas=document.getElementById(“myCanvas”);
var context=canvas.getContext(“2d”);
var img=新图像();
img.src=$(“#profileImg”);
背景.绘图图像(img,40,40);
var dataURL=canvas.toDataURL(“image/jpeg”);
警报(数据URL);
}捕获(e){
如果(e.name==“NS\u错误\u不可用”){
//这是Firefox中的一个bug。最简单的修复方法是继续尝试,直到错误消失,
//因为没有事件在正确的时间触发。
//请等待,然后重试;您可以更改此延迟的长度。
设置超时(图纸,100);
}否则{
投掷e;
}
}
}

与IE配合也很好。希望这有帮助。

警报(dataURL)之后是否真的有一个单引号?您使用的是哪个IE版本?它支持HTML5吗?不,这是复制代码时的错误。