Мне нужна помощь. У меня есть Heisenbug в моем коде. Он появляется только время от времени и не может быть запущен намеренно.
FireBug генерирует исключение типа «Указана неверная или недопустимая строка» и ссылается на строку внутри jQuery , которая выглядит следующим образом:
} else {
В любом случае, я был бы признателен за любую помощь! Я уже пробовал с FireQuery, но это мешает моему коду, так что это не вариант.
// РЕДАКТИРОВАТЬ: упомянутое местоположение прыгает вокруг и не имеет никакого отношения к самой ошибке.
// РЕДАКТИРОВАТЬ: я отследил его до строки, которая выглядит следующим образом:
context.fillText("[[*longtitle]]", x + 4, y + h + 15, w);
Я использую MODX CMS для создания этого сайта (вот откуда [[* longtitle]] и [[* id]] и все остальное; они являются шаблонными заполнителями). Вот полная функция этой строки:
($("imagecvs-[[*id]]").ready(function() {
var canvas = $("#imagecvs-[[*id]]").get(0);
if (canvas.getContext) {
var context = canvas.getContext('2d');
var img = new Image();
img.src = "[[*Photo]]";
var scale = 0.6;
var ratio = img.width / img.height;
var w = Math.min(img.width * scale, 120);
var h = w / ratio;
var x = 0;
var y = (canvas.height / 2.0) - (h / 2.0);
var deg = -8;
var rad = (deg * Math.PI / 180);
// y += (h / 2) * -Math.sin( rad );
context.rotate(rad);
context.fillStyle = "#FFF";
context.fillRect(x - 5, y - 5, w + 10, h + 30);
context.drawImage(img, x, y, w, h);
context.font = "Italic Bold 10px Serif";
context.textAlign = "left";
context.textBaseline = "ideographic";
context.fillStyle = "#000";
context.fillText("This is a test", x + 4, y + h + 15, w); // Exception thrown here; even with 'This is a test'
}
return true;
}));
Еще немного информации: я использую FireFox 10.0. Сайт находится по адресу http://www.roboter -club-hamburg.de .