1

MediaElement.js ビデオ プレーヤーを MVC 4 アプリケーションに統合しました。そのビューにはボタンがあり、ボタン クリックでビデオ ソースとポスター イメージを変更したいと考えています。mediaelementjs.com で提供されているコードから、ボタンのクリック時にビデオ ソースを変更するプロパティを見つけました。ただし、ポスター画像を変更するプロパティは含まれていません。ビデオソースのようにポスター画像を変更することはできますか?

これが私のコードです:

<div class="videoplayer">    
            <video width="436" height="331" id="player2" poster="../../Images/pix.jpg" controls="controls" preload="none">

            <!-- MP4 source must come first for iOS -->
            <source type="video/mp4" src="http://127.0.0.1:10000/devstoreaccount1/videos/video2.mp4" />

            <!-- Fallback flash player for no-HTML5 browsers with JavaScript turned off -->
                <object width="436" height="331" type="application/x-shockwave-flash" data="../build/flashmediaelement.swf">        
                    <param name="movie" value="../build/flashmediaelement.swf" /> 
                    <param name="flashvars" value="controls=true&amp;file=http://127.0.0.1:10000/devstoreaccount1/videos/video2.mp4" />         
                    <!-- Image fall back for non-HTML5 browser with JavaScript turned off and no Flash player installed -->
                    <img src="../../Images/pix.jpg" width="436" height="331" alt="No video playback capabilities" 
                        title="No video playback capabilities" />
                </object>   
            </video>
        </div>
        <script>

            $('audio,video').mediaelementplayer({
                success: function (player, node) {
                    debugger;
                    $('#' + node.id + '-mode').html('mode: ' + player.pluginType);
                }
            });

    </script>

    <input type="button" id="changevideo" value="Change Video" />

    <script type="text/javascript">
        $('#changevideo').click(function () {
            $('video, audio').each(function () {
                $(this)[0].player.setSrc("http://127.0.0.1:10000/devstoreaccount1/videos/video1.mp4");
                $(this)[0].player.play();
            });
        });

    </script>

ありがとう。

4

2 に答える 2

1
$('#changeposter').click(function() {
    $('video, audio').each(function() {
        $(this).attr("poster", "../../Images/new_pix.jpg");
    });
});
于 2012-09-10T11:58:55.913 に答える
0

有効にするには、ポスターを変更した後にプレーヤーをリロードすることをお勧めします。

var player = new MediaElementPlayer('#your-player-element-id');
player.load();
player.play();
player.pause();
于 2014-01-30T20:46:57.233 に答える