如何创建一个调用函数的函数

How to create a function which calls a function

本文关键字:函数 调用 何创建 一个 创建      更新时间:2023-09-26

我使用的是一个具有图像缩放功能的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工作原理的人:你需要提供两个图像,一个是正常大小,另一个是大尺寸的缩放。然后从缩放小图像开始初始缩放,当图像的缩放比例大于1.2时,加载大图像。

在我的代码中,由于我使用了jquery.reel库,我还自定义了一些axzoomer方法。单击缩放按钮时,将调用此功能:

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(在第382行开始的axzoomer.js函数中)内部,我无法到达zoomInOut函数,在初始加载时缩放图像。

好吧,对这个问题采取了不同的方法,很快就解决了。

这是解决方案。

文件:http://www.ifmi.lt/public/axzoomer/axzoomer-1.5+.js

  1. 添加了新的设置参数:initialZoom(第32行)
  2. 增加了对initialZoom参数的检查(第382行)

新功能检查initialZoom参数,如果存在,则在ax缩放器初始化时,将图像从图像中心缩放该量。