Попытка отследить ошибку замены изображения. Изображение другого размера появляется в исходном img источнике.
К сожалению, на моем ПК независимо от браузера (Firefox, Chrome, Safari) ошибка «тихая» и не вызывает проблемы.
Однако, отслеживание его с помощью инструментов Firebug и Chrome, похоже, показывает, что это происходит из-за ошибки «Узел не найден» в Firefox (chrome: «NOT_FOUND_ERR: DOM Exception 8»)
Это должен быть весь стандартный код из jigoshop, плагина WordPress. Это может быть потому, что тот, кто ставит изображения на первое место, не понимает взаимосвязи размеров изображения.
В любом случае, он ломается здесь:
document.body.removeChild(this.node);
Здесь около 13 строк (строка 653 в jquery.jqzoom-core.js)
this.fetchdata = function () {
var image = $(this.node);
var scale = {};
this.node.style.display = 'block';
$obj.w = image.width();
$obj.h = image.height();
$obj.pos = image.offset();
$obj.pos.l = image.offset().left;
$obj.pos.t = image.offset().top;
$obj.pos.r = $obj.w + $obj.pos.l;
$obj.pos.b = $obj.h + $obj.pos.t;
scale.x = ($obj.w / smallimage.w);
scale.y = ($obj.h / smallimage.h);
el.scale = scale;
document.body.removeChild(this.node);
$('.zoomWrapperImage', el).empty().append(this.node);
//setting lens dimensions;
lens.setdimensions();
};
узел, который он не может найти, это:, который находится после загруженного html здесь:
<div class="zoomWrapperImage" style="width: 100%; height: 496px;">
<img style="position: absolute; border: 0px none; display: block; left: -5000px; top: 0px;" src="http://xyz.com/shop/wp-content/uploads/2011/10/go-291x496.jpg">consoleName="jQuery.data"consoleKind="Element"consoleFramework="jQueryUI-1"consoleId="73"
</div>
Я слишком много вникал в jquery. Итак, 2 вопроса:
- Как решить эту проблему?
- Каков общий процесс исправления ошибок такого типа?