0

私のhtml iam初期化変数「 」の冒頭で、次のmovieSRCように:

<script type="text/javascript">

        var activeStep = getUrlVars();
        var movieSRC;

        cloud.getStepsForModules(activeStep.module, "UMCK").then(function(steps) {

            var calculatedStep = activeStep.step - 1;
            movieSRC = steps.steps[calculatedStep].movie;

        });

私のhtml最後に、 videojsの機能があります。

<script type="text/javascript">
    _V_("movie").ready(function() {
        var myPlayer = this;
        myPlayer.src(movieSRC);
</script>
</html>

最後の html部分が最初に読み込まれ、ページone after the other最初に 2 番目の部分が読み込まれる理由がわかりません。私は反対にそれが必要です!videojsビデオでは最初にスクリプトをロードし、その直後にスクリプトをロードする必要があるため、ページの最後にスクリプトを保持する必要があります。

結論:movieSRC in myPlayer.src(movieSRC)常に空です:(、しかしなぜですか?

4

3 に答える 3

1

ほとんどの場合、上記の cloud.getStepsForModules 関数から応答が返される前に、最後のスクリプトが評価されています。

また、2 番目のスクリプトには構文エラーがあります。閉じ括弧/括弧/セミコロンのセットがありません。

結果を使用する関数をコールバックに入れてみてください。

<script type="text/javascript">

    var activeStep = getUrlVars();
    var movieSRC;

    cloud.getStepsForModules(activeStep.module, "UMCK").then(function(steps) {

        var calculatedStep = activeStep.step - 1;
        movieSRC = steps.steps[calculatedStep].movie;
        _V_("movie").ready(function() {
           var myPlayer = this;
            myPlayer.src(movieSRC);
            });

    });
于 2013-10-01T10:22:55.930 に答える