Canvas - getImageData Problem

Aloha, hab mich eben registriert und gleich mal ne Frage.
Und zwar sollte sich im folgenden Code ein alert-Fenster öffnen.
Jedoch tut es das nicht =(

[CODE]

Title

var obj = new Image();
obj.src = „images/light.png“;

        function drawCanvas() {            
            var canvas = document.getElementById('canvas');
                
            if(canvas.getContext) {                                  
                var contextCanvas = canvas.getContext('2d');
                contextCanvas.drawImage(obj, 0, 0);
                var objImageData = contextCanvas.getImageData(0, 0, obj.width, obj.height);
                alert("Pixel an (0,0): rgba("+objImageData.data[0]+", "+objImageData.data[1]+", "+objImageData.data[2]+","+objImageData.data[3]+")");

            }
        }        
        window.onload = drawCanvas;
    </script>
    <link rel="stylesheet" type="text/css" href="css/stylesheet.css">
</head>
Get a better Browser =D
[/CODE]

Ich hoffe ihr findet einen Fehler =D

Mit freundlichen Grüßen
Shakezzz

Willkommen im Forum.

Mal in die Fehlerkonsole geguckt? Bei mir im Firefox läuft das so.

hm, noch nicht.
In der Fehlerkonsole steht folgendes

Fehler: uncaught exception: [Exception… „Security error“ code: „1000“ nsresult: „0x805303e8 (NS_ERROR_DOM_SECURITY_ERR)“ location: „file:///C:/Users/Stropp/Desktop/Webentwicklung/Canvas/main.html Line: 14“]

Sagt mir persönlich leider nicht viel, aber ich werd mal danach googlen

Es scheint daran zu hängen, ob du einen lokalen Webserver nutzt oder nicht. Das erste Suchergebnis ist schon ganz hilfreich, denke ich:

Jop, grad mit xampp probiert und es funktioniert =D
Danke
Aber wieso das vorhin nicht geklappt hat würde mich auch interessieren

Das Stichwort wäre „Origin Policy“. Ein paar Infos dazu etwa hier:

Warum es in diesem Fall greift, kann ich spontan nicht sagen.

Es muss ein HTTP(S)-Kontext existieren, so einfach ist das. Ist genau das selbe wie XMLHttpRequest. Muss man so hinnehmen ^^