IE8-Kompatibilität mit EaselJS und ExplorerCanvas erhalten

Ich verwende EaselJS und möchte die Abwärtskompatibilität mit ExplorerCanvas zulassen.

Dies sollte mit dem folgenden Code möglich sein (sieheHier):

createjs.createCanvas = function () { ... return canvas implementation here ... }

Wenn ich jedoch eine Warnung in diese Funktion einsetze und den Code ausführe, wird die Funktion niemals ausgeführt.

Wie bringe ich das zum Laufen?

Bearbeiten:

Hier ist ein vereinfachtes Beispiel für den Code, den ich verwende:

<!DOCTYPE html>
<html lang='en'>
<head>
    <meta charset='utf-8' />
    <script src='/Scripts/jquery-1.7.1.js'></script>
    <script src="/Scripts/excanvas/excanvas.compiled.js"></script>
    <script src="/Scripts/easeljs/lib/easeljs-0.5.0.min.js"></script>
    <script src='/Scripts/core/jquery.mousewheel.js'></script>
    <style>
        canvas
        {
            border: 1px solid #ccc;
        }
    </style>
    <script type='text/javascript'>
        $(document).ready(function () {
            // Variables
            var img;
            var stage;
            var bmp;

            // Bindings
            $('#load').click(function () { initialize() }); // DELETE

            // Functions

            function initialize() {
                img = new Image();
                img.onload = imageLoadedEvent;
                img.src = '/Scripts/viewer/June.jpg';
            }

            function imageLoadedEvent() {
                var canvasElement = generateContext('testCanvas', 400, 400);

                stage = new createjs.Stage('testCanvas');
                bmp = new createjs.Bitmap(img);

                stage.autoClear = true;
                stage.addChild(bmp);
                stage.update();
            }

            function generateContext(canvasID, width, height) {
                var canvasElement = document.createElement('canvas');

                if (typeof (G_vmlCanvasManager) != 'undefined')
                    canvasElement = G_vmlCanvasManager.initElement(canvasElement);

                canvasElement.setAttribute("width", width);
                canvasElement.setAttribute("height", height);
                canvasElement.setAttribute("id", canvasID);

                document.getElementById('viewer').appendChild(canvasElement);
            }
        });
    </script>
</head>
<body>
    <div id='viewer'>
        <button id='load'>load</button>
    </div>

</body>
</html>

Dieses Beispiel wird in Chrome und IE9 ausgeführt, wenn ein natives Canvas-Element erstellt und verwendet wird. In IE8 schlägt dies jedoch fehl.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage