Я пришел сегодня, чтобы показать ошибку, вызванную операцией в JQuery, об объектном преобразовании, вот код (function setColor (x, y)):Ошибка Opera: исключение uncaught: TypeError: невозможно преобразовать 'xxxxxx' в объект
colourpixel = $('#colour').css('background-color').match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);//["rgb(0, 70, 255", "0", "70", "255"]
var canvas = document.createElement('canvas');
canvas.height=190;
canvas.width=190;
canvascontext = canvas.getContext("2d");
defaultdata = $('#light').get(0).getContext("2d").getImageData(0,0,190,190);
canvascontext.putImageData(defaultdata,0,0);
canvascontext.globalCompositeOperation = 'destination-atop';
canvascontext.fillStyle='rgb('+colourpixel[1]+', '+colourpixel[2]+', '+colourpixel[3]+')';
А вот ошибка брошена оперы:
Uncaught exception: TypeError: Cannot convert 'colourpixel' to object
Error thrown at line 157, column 1 in setColor(x, y) in file://localhost/home/angelus/Desarrollo/webs/ColorP/functions.js:
canvascontext.fillStyle='rgb('+colourpixel[1]+', '+colourpixel[2]+', '+colourpixel[3]+')';
called from line 61, column 2 in <anonymous function>(event) in file://localhost/home/angelus/Desarrollo/webs/ColorP/functions.js:
setColor(x,y);
called from line 55, column 294 in <anonymous function: handle>(a) in file://localhost/home/angelus/Desarrollo/webs/ColorP/jquery.min.js:
i=i.handler.apply(this,arguments);
called via Function.prototype.apply() from line 49, column 569 in <anonymous function: o>() in file://localhost/home/angelus/Desarrollo/webs/ColorP/jquery.min.js:
return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w
Я попытался создать объект как массив (вар colourpixel = новый Array();), но ничего не бежать.
Спасибо заранее!
@Nick «ошибка, вызванная операми» – lonesomeday
@Angelus Почему бы не добавить конечную скобку в регулярное выражение и сделать 'canvascontext.fillStyle = colourpixel [0];'? – lonesomeday
Причина, если я положил; там, есть проблема с синтаксисом, связанная с конвекцией строк? –