如何在Javascript中访问公共函数

时间:2017-12-10 04:28:56

标签: javascript jquery

我不是一个JavaScript人,所以我不确定如何让这个工作。

我在我的一个项目中使用SmartWizard。最初的SmartWizard代码由不再可用的人扩展,并且无法询问。

我想要做的是将代码保留原样并只访问其类中的函数,以便在向导过程中向前或向后移动用户。

据我所知,执行我需要的操作的函数称为goForwardgoBackward。如何从课外访问它们?

这是goForward函数:

SmartWizard.prototype.goForward = function(){
    var nextStepIdx = this.curStepIdx + 1;
    if (this.steps.length <= nextStepIdx){
        if (! this.options.cycleSteps){
            return false;
        }
        nextStepIdx = 0;
    }
    _loadContent(this, nextStepIdx);
};

我想访问其代码中还有其他功能,例如当用户单击Next,Prev和Finish按钮时可以触发的3个回调。以下是我需要访问的3个回调。

  $.fn.smartWizard.defaults = {
    onLeaveStep: null, // triggers when leaving a step
    onShowStep: null,  // triggers when showing a step
    onFinish: null,  // triggers when Finish button is clicked
  };

有人可以了解我需要做什么才能访问它们吗?

2 个答案:

答案 0 :(得分:0)

这些方法看起来像实例方法,而不是类方法。

例如,goForward正在引用实例变量(例如,curStepIdxsteps),因此您无法将其称为类方法。您需要在实例化对象上调用它。

答案 1 :(得分:0)

$('#wizard').smartWizard({  
   ...
   ...

    // Events
    onLeaveStep: function () {
        // Do Your stuff on step leave
    }, // triggers when leaving a step
    onShowStep: : function () {
        // Do Your stuff on step show
    },  // triggers when showing a step
    onFinish: : function () {
        // Do Your stuff on finish
    }  // triggers when Finish button is clicked  

});