0

プロジェクトでngVideoを使用していますが、コントローラから現在の時刻を取得/設定する方法がわかりません。コントローラからngVideoオブジェクトを制御する

マイコントローラ:

'use strict'; 

angular.module('clientApp') 
.config(function($stateProvider){ 
    $stateProvider 
    .state('video', { 
    url:'/video', 
    templateUrl:'views/video.html', 
    controller:'VideoController as video' 
    }); 
}) 
.controller('VideoController', function($scope, video){ 
    video.addSource('mp4', 'views/unit_1.mp4'); 
    video.currentTime = 10; 
    console.log('Current Time: ' video.currentTime); 

}); 

マイHTML:

<section class="video" ng-video> 
    <video vi-screen></video> 
<section vi-feedback> 

    <ul> 
     <li>Time: {{currentTime}}s/{{duration}}s</li> 
     <li>Volume: {{volume}}</li> 
     <li>Buffered: {{buffered}}%</li> 
     <li>Loading: {{loading}}</li> 
     <li>Playing: {{playing}}</li> 
    </ul> 

</section> 
</section> 

答えて

1
video.currentTime = 10; 

は時間を設定する必要があります。 、そして、

$scope.setCurrentTime = function(newTime) { 
    video.currentTime = newTime; 
}; 

フォームまたは他のコードからそれを呼び出すことができます:あなたは、コード内の別の場所にそれをリセットする必要がある場合、私は次のように時間を設定する機能を作成します

<button ng-click="setCurrentTime(30)">Set to 30</button> 

または

if (some condition) { 
    $scope.setCurrentTime(30); 
} 

か、あなたは(機能なし)入力フィールドにビデオの音量バインドすることができます。

<input id="videoTime" ng-model="video.currentTime" /> 

希望すると助かります!

関連する問題