Как создать функцию, которая вызывает функцию - PullRequest
1 голос
/ 23 января 2012

Я использую файл jquery с функцией масштабирования изображения:

http://www.albanx.com/jslibs/axzoomer.js

Все работает нормально.Но теперь мне нужна функция, которая не включена в плагин.На событии активации масштабирования уровень масштабирования по умолчанию должен быть изменен.

Я пробовал что-то вроде этого:

imageLoaded:function()
{
    return this.each(function()
    {
        var $this = $(this);
        $this.zoomInOut(1.5);

        // zoomInOut(1.5);
    });
},

Но не повезло ... Так как я не уверен, какфункции работают в jQuery, а zoomInOut - это функция внутри функции, как я понял ...

Любая помощь приветствуется.

ОБНОВЛЕНИЕ

Функция, показанная ранее, интегрирована в этот js-файл:

http://www.ifmi.lt/public/axzoomer/axzoomer-1.5.js (строка 382).

Для тех, кто не знает, работает ли axzoomer: вам необходимо предоставить2 изображения одно в нормальном размере, другое большой размер для увеличения.Затем начальное увеличение начинается с масштабирования маленького изображения, когда масштаб изображения больше 1,2, тогда большое изображение загружается.

В моем коде, поскольку я использую библиотеку jquery.reel, я также настроилнемного подход аксор.При нажатии кнопки масштабирования вызывается эта функция:

function zoomImage ()
{
    var value = Number ( $('#image360').attr('src').split ( '_' )[1].split ( '.' )[0] );

    $('#zoom-content').load( initiateZoom );

    $('#zoom-content').attr ( 'src', 'products/1/' + value + '.jpg' );
    $('#zoom-content').attr ( 'src-big', 'product/1/zoom/' + value + '.jpg' );

    $('#zoom-content').axzoomer({
        'maxZoom':3,
        'opacity':0.5,
        'sensivity':17,
        'showControls':false,
        'zoomIn':'',
        'zoomOut':''
   });
}

После загрузки небольшого изображения вызывается функция initiateZoom.Функция axzoomer ( 'imageLoaded' ); доступна из js, она вызывается при загрузке небольшого изображения:

function initiateZoom() 
{
    $('#zoom-content').axzoomer ( 'enable' );
    $('#zoom-content').axzoomer ( 'imageLoaded' );
}

Но внутри imageLoaded (в функции axzoomer.js, начиная со строки 382), я не могу связатьсяфункция zoomInOut, чтобы увеличить изображение при начальной загрузке.

1 Ответ

1 голос
/ 24 января 2012

хорошо, по-другому подошел к проблеме, и она была решена в кратчайшие сроки.

Вот решение.

файл: http://www.ifmi.lt/public/axzoomer/axzoomer-1.5+.js

  1. Добавлен новый параметр настройки: initialZoom (строка 32)
  2. Добавлена ​​проверка параметра initialZoom (строка 382)

Новая функциональность проверяет параметр initialZoom и, если онсуществует, масштабирует изображение на эту величину от центра изображения, когда инициализируется аксор-зумер.

...