0

2 つの FLV ビデオが埋め込まれた Flash ムービーがあります。私がしたいのは、ページが読み込まれると、ムービーが両方のビデオ クリップを再生することです...次に、2 番目のクリップの最後に到達すると、切り替えて 2 番目のクリップの先頭まで逆再生し、次に再び終わり - 基本的に、タイムラインの後半の「ピンポン」ループ。

いくつかの異なるソリューションを見てきましたが、それらはすべてボタンで使用するためのもので、複雑すぎるようです。私がやりたいことは非常に単純で、数行のコードしか必要としないことを願っています。

ここに私が現在取り組んでいるものがありますが、うまくいきません (AS を使用してから長い時間が経っているので、明らかな何かを見逃していると確信しています)。フレーム 171 は 2 番目のクリップの開始位置で、フレーム 230 はムービーの終了位置です。

function mcPlay(_root, 171) {
    if (f == 230) {
        f = _root._totalframes;
    }
    _root.onEnterFrame = function() {
        var cf:Number = this._currentframe;
        if (cf == f) {
            delete this.onEnterFrame;
        } else if (cf<f) {
            this.nextFrame();
        } else {
            this.prevFrame();
        }
    };
}
4

1 に答える 1

0

以下は必要なコードです。これを機能させるための重要な注意事項の 1 つです。コードをメインのビデオ タイムラインではなく、1 フレームのムービークリップに配置します。

var direction:String = "forward";

_root.onEnterFrame = function()
{
    if (direction == "forward")
    {
        if (_root._currentframe == _root._totalframes)
        {
            trace("switch to back")
            _root.stop()
            direction = "back";
        }
    }
    else if (direction == "back")
    {
        if (_root._currentframe == 171)
        {
            trace("switch to forward")
            direction = "forward";
            _root.play();
        }
        else
            _root.prevFrame();
    }
}
于 2013-07-30T10:06:36.940 に答える