Javascript ReferenceError: Нарушение безопасности в Android Opera - PullRequest
1 голос
/ 13 марта 2012

Я написал код в Javascript следующим образом, и он хорошо работает на моем ноутбуке. Однако, когда я запускаю его в браузере Android Opera, он падает.

window.onload = function() {
... 
   var toDataURL=function(){
     var imageData=[];
     for(var s=0;s<this.height;s++){ 
       imageData=imageData.concat(oCanvas.getContext("2d").getImageData(0,s,this.width,1).data); //crash here
      }
   ...
   }
...

} Выдает ошибку

Неопределенное исключение: ReferenceError: Нарушение безопасности. Ошибка в строке 77, столбец 21 in () в http://www.minh.host48.com/:

imageData=imageData.concat(oCanvas.getContext("2d").getImageData(0,s,this.width,1).data);

Подскажите, пожалуйста, в чем проблема и как ее исправить? Большое вам спасибо

1 Ответ

1 голос
/ 19 марта 2012

вы пытаетесь получить доступ к контексту на каждой итерации, вам просто нужен контекст один раз

imageData=imageData.concat(oCanvas.getContext("2d").getImageData(0,s,this.width,1).data);

почему бы не сделать

var ctx=oCanvas.getContext("2d") for{
imageData=imageData.concat(ctx.getImageData(0,s,this.width,1).data); }
...