Почему chrome вызывает исключение безопасности для canvas.toDataURL - PullRequest
0 голосов
/ 23 февраля 2012

Может ли кто-нибудь помочь мне понять, почему Chrome может вызвать исключение безопасности, когда я загружаю эту страницу из локальной файловой системы?У Opera и Firefox нет проблем, и из того, что я читал, флаг origin-clean все равно должен быть истинным.

<html>
<head>
<title>Canvas Test</title>
<script type="text/javascript">

    var canvas = document.createElement("canvas");
    canvas.setAttribute("width", 100);
    canvas.setAttribute("height", 100);

    var myImage = new Image();
    myImage.src = "gradient-1.png";

    function draw(){  
        document.body.appendChild(canvas);
        var ctx = canvas.getContext("2d");  
        ctx.drawImage(myImage, 0, 0, 100, 100);
        data = canvas.toDataURL("image/png");
        // Chrome says Uncaught Error: SECURITY_ERR: Dom Exception 18
    }

</script>
</head>

<body onload="draw()">
</body>
</html>

1 Ответ

0 голосов
/ 18 мая 2012

Мое лучшее предположение - вы загружаете html-файл прямо из файловой системы в вашем браузере. Я увидел ту же проблему, когда начал играть с canvas и не запускать свой код через локальный веб-сервер. Попробуйте, иначе это скорее всего поврежденный файл, потому что ваш код правильный.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...