这篇文章将主要探计关于怎么增加自定义视频和语音播放功能在你的WEB网站里面。这个是一个非常好的jQuery新插件(jPlayer), 包括很多功能 : 它允许你播放多媒体文件, 暂停,音量调整,它拥有视频和音频播放功能会用到的所有功能控掉,同样他允许你改变它的所有样式(styles),因为他的全部外观都是在一个css文件 里面。另外,它同样支持HTML5 和支持所有主流的浏览器。它目前支持的格式有: mp3, ogg, m4a, m4v, ogv, wav等等。


简短的介绍以后,我们开始详细编码过程:

1. HTML
首先开始HTML部件

    <link rel="stylesheet" href="css/jplayer.blue.monday.css" type="text/css" media="all" />
    <link rel="stylesheet" href="css/main.css" type="text/css" media="all" />
    <script src="js/jquery.min.js" type="text/javascript"></script>
    <script src="js/jquery.jplayer.min.js" type="text/javascript"></script>
    <script src="js/main.js" type="text/javascript"></script>
    <div class="example">
        <div>
            <div class="players">
                <h2>Audio player</h2>
                <div class="jp-audio">
                    <div class="jp-type-single">
                        <div id="jquery_jplayer_1" class="jp-jplayer"></div>
                        <div id="jp_interface_1" class="jp-interface">
                            <ul class="jp-controls">
                                <li><a href="#" class="jp-play" tabindex="1">play</a></li>
                                <li><a href="#" class="jp-pause" tabindex="1">pause</a></li>
                                <li><a href="#" class="jp-stop" tabindex="1">stop</a></li>
                                <li><a href="#" class="jp-mute" tabindex="1">mute</a></li>
                                <li><a href="#" class="jp-unmute" tabindex="1">unmute</a></li>
                            </ul>
                            <div class="jp-progress">
                                <div class="jp-seek-bar">
                                    <div class="jp-play-bar"></div>
                                </div>
                            </div>
                            <div class="jp-volume-bar">
                                <div class="jp-volume-bar-value"></div>
                            </div>
                            <div class="jp-current-time"></div>
                            <div class="jp-duration"></div>
                        </div>
                        <div id="jp_playlist_1" class="jp-playlist">
                            <ul>
                                <li>Audio track</li>
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
            <div class="players">
                <h2>Video player</h2>
                <div class="jp-video jp-video-270p">
                    <div class="jp-type-single">
                        <div id="jquery_jplayer_2" class="jp-jplayer"></div>
                        <div id="jp_interface_2" class="jp-interface">
                            <div class="jp-video-play"></div>
                            <ul class="jp-controls">
                                <li><a href="#" class="jp-play" tabindex="1">play</a></li>
                                <li><a href="#" class="jp-pause" tabindex="1">pause</a></li>
                                <li><a href="#" class="jp-stop" tabindex="1">stop</a></li>
                                <li><a href="#" class="jp-mute" tabindex="1">mute</a></li>
                                <li><a href="#" class="jp-unmute" tabindex="1">unmute</a></li>
                            </ul>
                            <div class="jp-progress">
                                <div class="jp-seek-bar">
                                    <div class="jp-play-bar"></div>
                                </div>
                            </div>
                            <div class="jp-volume-bar">
                                <div class="jp-volume-bar-value"></div>
                            </div>
                            <div class="jp-current-time"></div>
                            <div class="jp-duration"></div>
                        </div>
                        <div id="jp_playlist_2" class="jp-playlist">
                            <ul>
                                <li>Tokyo weather</li>
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div> 

在上同画出2播放器 - 音频和视频,它们两个的代码类似.

2. CSS

需要用到的CSS样式

    body{background:#eee;font-family:Verdana, Helvetica, Arial, sans-serif;margin:0;padding:0}
    .example{background:#FFF;width:1000px;height:500px;font-size:80%;border:1px #000 solid;margin:0.5em 10% 0.5em;padding:1em 2em 2em;-moz-border-radius:3px;-webkit-border-radius:3px}
    .example .players{float:left;margin:10px} 

其它css文件(相关的图片文件):
css/jplayer.blue.monday.css, css/jplayer.blue.monday.jpg, css/jplayer.blue.monday.video.play.png, css/jplayer.blue.monday.video.play.hover.png and css/pbar-ani.gif这些全部包括在源码包里面.

3. JS这里是全部需要用到的js文件在这个例子中.

js/main.js

    $(document).ready(function(){
        $("#jquery_jplayer_1").jPlayer({
            ready: function () {
                $(this).jPlayer("setMedia", {
                    mp3: "media/track.mp3",
                }).jPlayer("play"); // auto play
            },
            ended: function (event) {
                $(this).jPlayer("play");
            },
            swfPath: "swf",
            supplied: "mp3"
        })
        .bind($.jPlayer.event.play, function() { // pause other instances of player when current one play
                $(this).jPlayer("pauseOthers");
        });
        $("#jquery_jplayer_2").jPlayer({
            ready: function () {
                $(this).jPlayer("setMedia", {
                    m4v: "media/tokyo.m4v",
                    ogv: "media/tokyo.ogv",
                    poster: "media/poster.jpg"
                });
            },
            ended: function (event) {
                $("#jquery_jplayer_2").jPlayer("play", 0);
            },
            swfPath: "js",
            supplied: "m4v, ogv",
            cssSelectorAncestor: "#jp_interface_2"
        })
        .bind($.jPlayer.event.play, function() { // pause other instances of player when current one play
                $(this).jPlayer("pauseOthers");
        });
    }); 

js/jquery.min.js and js/jquery.jplayer.min.js这几个是公共的文件 - jQuery库与播放插件js文件.


4. SWF
使用flash swf文件: 例子中的主播放器.

swf/Jplayer.swf

到这里差不多全部完成. 所有测试的多媒体播放文件都放置在‘media’ 下面.
音频文件 -  track.mp3,
视频文件: tokyo.m4v + tokyo.ogv,
缩略图(poster): poster.jpg
如果你有遇到一个奇怪的问题和 ogg文件(oga, ogv, ogg) 不能使有,请尝试在你的 .htaccess 里面增加:
AddType audio/ogg .oga
AddType video/ogg .ogv .ogg

在线DEMO例子

转载请保留出自:   IT快讯网   |  原文地址: 详细教程使用jQuery jPlayer插件给你的站点增加视频和音频功能

posted on 2011-09-17 09:03  darwinwen  阅读(563)  评论(0编辑  收藏  举报