У меня есть div, полный изображений 60x60, расположенных в строках по 5. Я хочу показывать увеличенную версию (с максимальным размером 300x300) каждого эскиза при наведении курсора на каждое изображение. У меня есть окружающий div, который скрывает переполнение, поэтому, если вы наведете курсор на изображение в одном из углов, увеличенное изображение будет обрезано, поэтому мне нужно перевернуть изображение на другую сторону. Код, который у меня есть в настоящее время, не решает эту проблему отсечения. Любые идеи, как правильно реализовать это, или есть какие-либо упакованные решения там (предпочтительно с использованием jQuery)?
$('a.thumb img').live('mouseover', showThumbnail);
$('a.thumb img').live('mouseout', function() { $('#image-thumbnail').hide(); });
$('#images a.thumb').live('click', function() { return false; }); /* disable clicks */
function showThumbnail() {
var pos = { left: this.offsetLeft, top: this.offsetTop }
var css = { }
css['left'] = pos.left + 60 + 5;
if (css['left'] + 300 > this.offsetParent.offsetWidth)
{
css['right'] = pos.left - 5 + 'px';
delete css['left'];
} else {
css['left'] += 'px';
}
css['top'] = pos.top + 60 + 5;
if (css['top'] + 300 > this.offsetParent.offsetHeight+50)
{
css['bottom'] = pos.top - 5 + 'px';
delete css['top'];
} else {
css['top'] += 'px';
}
$('#image-thumbnail').css(css);
$('#image-thumbnail').html("<img style='max-width: 300px; max-height: 300px;' src='" + $(this).parent()[0].href + "' />").show();
}