我如何调用Javascript原型函数?

时间:2011-09-23 21:50:57

标签: javascript function-prototypes

这是要调用的Javascript代码 功能警告它来自Stage6,我将完全重建以使其恢复生效:)

// Alerts (in the header)
    function Alerts(total) {
        this.current_page = 1;
        this.last_page = Math.ceil(total / 4);
        if (this.current_page == this.last_page) {
            $('alert-next-button').className = 'alert-next-inactive';
        }
    }

这是来自DivX Stage6的原型函数:

Alerts.prototype.next = function () {
    if (this.current_page == this.last_page) {
        return;
    }
    new Effect.BlindUp('alerts-' + this.current_page, {
        scaleFrom:80,
        duration:0.4,
        queue:{
            position:'end',
            scope:'alerts'
        }
    });
    new Effect.BlindDown('alerts-' + (this.current_page + 1), {
        scaleTo:80,
        duration:0.4,
        queue:{
            position:'end',
            scope:'alerts'
        }
    });
    this.current_page++;
    if (this.current_page > 1) {
        $('alert-prev-button').className = 'alert-prev';
    }
    if (this.current_page == this.last_page) {
        $('alert-next-button').className = 'alert-next-inactive';
    }
}

第二个原型功能:

Alerts.prototype.previous = function () {
    if (this.current_page == 1) {
        return;
    }
    new Effect.BlindUp('alerts-' + this.current_page, {
        scaleFrom:80,
        duration:0.4,
        queue:{
            position:'end',
            scope:'alerts'
        }
    });
    new Effect.BlindDown('alerts-' + (this.current_page - 1), {
        scaleTo:80,
        duration:0.4,
        queue:{
            position:'end',
            scope:'alerts'
        }
    });
    this.current_page--;
    if (this.current_page == 1) {
        $('alert-prev-button').className = 'alert-prev-inactive';
    }
    if (this.current_page < this.last_page) {
        $('alert-next-button').className = 'alert-next';
    }
}

我需要这个功能的HTML代码。 它是逆向工程:=)

以下是第6阶段的图片 http://img10.imageshack.us/img10/1733/83630697.png

我已经测试过,但我没有解决方案。

希望有人可以帮助我。

2 个答案:

答案 0 :(得分:1)

不确定您是要尝试定义原型函数,还是调用一个:

制作原型功能:

Alerts.prototype.nameYourFunction = function(total) {
    this.current_page = 1;
    this.last_page = Math.ceil(total / 4);
    if (this.current_page == this.last_page) {
        $('alert-next-button').className = 'alert-next-inactive';
    }

};

nameYourFunction替换为您想要的任何内容

那么你就可以这样称呼它:

Alerts.nameYourFunction(2);

或者拨打您添加到问题中的那个:

Alerts.next();

答案 1 :(得分:1)

mmm ... mmm .... var a = new Alerts(5); a.next() ????