0

ここにある Vimeo Srt Jquery プラグインを使用して、Vimeo ビデオに字幕を追加しようとしています。

https://github.com/Yomguithereal/vimeo-srt

テンプレートを使用して字幕を正常に再生できますが、必要に応じて字幕を選択して変更するためのドロップダウン選択が必要です。以下のコードがありますが、字幕が初期化されると変更されないように見えます。誰でも何か提案はありますか?

<div id="container">
<iframe id="vimeoplayer" video="68038551" width="690px" height="422px" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" src="http://player.vimeo.com/video/68038551?api=1&player_id=vimeoplayer" scrolling="no">      </iframe>
    </div>
    <script src="http://code.jquery.com/jquery-2.0.0.min.js"></script>
    <script src="http://a.vimeocdn.com/js/froogaloop2.min.js"></script>
    <script src="jquery.vimeo-srt.js"></script>
    <form class="pure-form pure-form-stacked">
<select name="subs" id="subs">
  <option selected="selected" value="0">Subtitles</option>
  <option value="EN">English</option>
  <option value="RU">Russian</option>
  <option value="TL">Tagalog</option>
  <option value="ZH">Chinese</option>
</select>
</form>

 <script type="text/javascript">
        $(document).ready(function(){
            var $player =$("#vimeoplayer");
            $player.vimeoSrt({srt : 'vgroup_env_comp.EN.srt'});

            $( "#subs").change(function () {

                if ($("#subs").val() == "0") {
                    $player.vimeoSrt({srt :''});   
                } else {
                    var pathtofile= "mysubtitles." + $( "#subs" ).val() + ".srt";
                    $player.vimeoSrt({srt : pathtofile});
                }
            });
        });


    </script>
4

1 に答える 1

1

このプラグインには字幕を変更する方法がないため、変更する必要があります。次のコードを使用して、「loadSrt」と呼ばれる新しいメソッド (たとえば、「findSuitableStep」の直後) を作成できます。

,loadSrt: function (file) {
    var self = this;

    $.get(file, function (srt) {
        //Remove the current subtitles
        self._srt = [];

        //Set new subtitles
        self.parseSrt(srt);
    });
}

次に、この関数を次のように呼び出すことができます。 $player.data('plugin_vimeoSrt')('loadSrt', 'subtitles.srt');

私はコードをチェックしませんでした。いくつかのバグがある可能性がありますが、これがお役に立てば幸いです。

于 2013-09-13T11:07:33.273 に答える