Масштабирование изображения, направленного на курсор мыши

Использование:

Пользователь нажимает на ссылку, отображается модальное окно, содержащее одно большое изображение, масштабированное, чтобы соответствовать этому окну. Когда пользователь прокручивает свой мышечный двигатель вверх или вниз, изображение увеличивает или выходит. Изображение увеличивается в любом месте, что курсор мыши указывает.

Проблема:

Я не могу обернуть мозговой мозг вокруг того, как это сделать это.

Текущая работа:

Когда нажата ссылка, плагин jQuery создает коллекцию HTML-элементов HTML «Viewer», создает «Viewer» элементов HTML, которые устанавливаются с CSS. Это абсолютный позиционированный Div, который содержит IMG-элемент. Изображение масштабируется до 100% ширины. При прокрутке изображение увеличивается на 5% за действие прокрутки.

Поскольку изображение масштабируется во время масштабирования, содержащий div (переполнение: hidden) в конечном итоге закреплен изображение. Изображение перегружается так, чтобы вы всегда могли видеть все части этого.

Переменные, которые я удерживаю и знаю:

Соотношение изображения изображения. Размеры изображения до нашего самого последнего увеличения действий. Новые размеры изображения после нашего последнего Zoom Action. Разница в этих двух измерениях. Положение x и y изображения. Положение x и y курсора мыши, по отношению к позиционированному контейнеру div.

Что мне, вероятно, нужно:

Я знаю, что мне нужно переменные, я просто не могу понять, в каком порядке их поставить и какие операторы использовать, когда. Математика никогда не была моим крепким костюмом, ни была грамматика. Таким образом, любая помощь ценится.

Исследование:

Я много гугул для существующих решений. Большинство были реализации OpenGL или Flash / ActionScript, ни один из которых имеет смысл мне вообще. Несколько немногие примеры на основе JavaScript, которые я обнаружил, были в коммерческих целях, и даже тогда их исходный код был запутан или заминирован, и я не мог правильно извлечь внутреннюю работу для этой маленькой функции.

Кроме того, у меня, вероятно, нет правильных поисковых слов, чтобы понять это, либо.

5
задан MHD 31 August 2011 в 13:11
поделиться