1

ng-click呼び出しでpublishBookmarkスコープオブジェクト.On htmlページレンダリングにはビデオタグがあるため、ビデオタグをキャッチし、ボタンをクリックすると現在の時刻の場所を取得しようとしますが、常にアラートメッセージとして「0」を取得します。

<button class="btn-default" type="button" data-ng-click="publishBookmark()">
</button>

$scope.publishBookmark = function () {
    var location = document.getElementsByTagName("video").currentTime;
    alert(location);
};

<!--Videogular COntainer Starts  -->
<div ng-controller="videogularController as controller" class="videogular- player">
<videogular vg-theme="controller.config.theme.url"
vg-auto-play="controller.config.plugins.controls.autoPlay">
<vg-media vg-src="controller.config.sources"
vg-native-controls="false">
</vg-media>
<vg-controls vg-autohide="controller.config.plugins.controls.autoHide" 
vg-autohide-time="controller.config.plugins.controls.autoHideTime">
<vg-play-pause-button></vg-play-pause-button>
<vg-time-display>{{ API.currentTime | date:'mm:ss':'+0000' }}</vg-time- display>
<vg-scrub-bar>
<vg-scrub-bar-current-time></vg-scrub-bar-current-time>
</vg-scrub-bar>
<vg-time-display>{{ API.totalTime | date:'mm:ss':'+0000' }}</vg-time-display>
<vg-volume>
<vg-mute-button></vg-mute-button>
<vg-volume-bar></vg-volume-bar>
</vg-volume>
<vg-playback-button></vg-playback-button>
<vg-fullscreen-button></vg-fullscreen-button>
</vg-controls>
<vg-poster vg-url='controller.config.plugins.poster'></vg-poster>
</videogular>
<!-- Videogular Container Ends -->

デフォルトでは、アラートは常に 0 を示します。angular JS が初めてで、助けが必要です。ありがとう。

4

1 に答える 1

2

HTML に、コントローラーで更新時間をリッスンするコールバックを追加します。

<videogular vg-update-time="ctrl.onUpdateTime($currentTime, $duration)">
    <!-- videogular plugins and other stuff -->
</videogular>

コントローラーで現在の時刻を取得します。

    this.onUpdateTime = function (currentTime, totalTime) {
        this.currentTime = currentTime;
        this.totalTime = totalTime;
    };

デモをご覧になることをお勧めします。

すべての Videogular 機能の使用方法を示します。特に main.jsファイル。

于 2015-08-29T10:38:05.687 に答える