angular.js video.js directive

<!DOCTYPE html>
<html>
<head>
    <Meta charset="UTF-8">
</head>
<body>
    <div ng-app="app" ng-controller="MainCtrl">
        <div ng-if="mediaToggle">
            <video class="video-js vjs-default-skin" controls preload="auto" width="640" height="264" vjs-video vjs-media="mediaToggle"></video>
        </div>
        <button ng-click="change()">change</button>
    </div>

    <script src="http://cdn.bootcss.com/angular.js/1.3.0/angular.min.js"></script>

    <link href="http://cdn.bootcss.com/video.js/5.0.0-11/video-js.min.css" rel="stylesheet">
    <script src="http://cdn.bootcss.com/video.js/5.0.0-11/video.min.js"></script>

    <!-- https://github.com/LonnyGomes/vjs-video -->
    <script src="vjs-video.min.js"></script>

    <script>

        angular.module('app',['vjs.video']).controller('MainCtrl',function ($scope) {

            $scope.change = function () {
                if ($scope.mediaToggle && $scope.mediaToggle.sources[0].src === 'http://vjs.zencdn.net/v/oceans.mp4') {
                    $scope.setSrc('http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.mp4');
                }
                else {
                    $scope.setSrc('http://vjs.zencdn.net/v/oceans.mp4');
                }
            }

            $scope.setSrc = function (url) {

                $scope.mediaToggle = {
                    sources: [
                        {
                            src: url,type: 'video/mp4'
                        }
                    ],poster: 'https://cn.vuejs.org/images/logo.png'
                };
            }

            $scope.$on('vjsVideoReady',function (e,data) {
                //data contains `id`,`vid`,`player` and `controlBar`

                //NOTE: vid is depricated,use player instead
                console.log('video id:' + data.id);
                console.log('video.js player instance:' + data.player);
                console.log('video.js controlBar instance:' + data.controlBar);
            });
        });
    </script>
</body>
</html>

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...