Ng-click不适用于HTML5视频滑块栏

时间:2016-01-19 16:04:59

标签: javascript angularjs html5 undefined angularjs-ng-click

我一直在关注新浪的HTML5视频教程,并一直在尝试更改位以使用AngularJS。但是,如果您点击的位置与当前正在播放的位置不同,我在更新时无法更新。

我的代码:

https://github.com/IdrisAbdul-Hussein/portfolio2.git

基本上,我有一个video.html文件加载视频播放器等(video.html包含在回购中),如下所示:

<div id="big_wrapper">
    <section id="skin">
    <video id="myMovie" width="640" height="360">
        <source src="videos/testVideo.mp4"/>
    </video>
        <nav>
            <div id="buttons">
                <button type="button" id="playButton" ng-click="playOrPause()">Play</button>
            </div>
            <div id="defaultBar" ng-click="clickedBar()">
                <div id="progressBar"></div>
            </div>
            <div style="clear:both"></div>
        </nav>
    </section>
</div>

ng-click引用的功能在我的controller.js。

我得到的错误是:

TypeError:e未定义 - controller.js(第53行)

但是,当我放ng-click="clickedBar(this)"时,它会给我以下错误:

错误:分配给HTMLMediaElement.currentTime的值不是有限的浮点值。 - controller.js(第55行)

我不确定哪个方向更正确,不确定如何解决问题!一直在试图解决这个问题。

感谢任何帮助!

提前致谢!

2 个答案:

答案 0 :(得分:0)

您的“e未定义”错误是因为您的代码希望e包含click事件。 ng-click="clickedBar()未将事件传递给clickedBar。请改为ng-click="clickedBar($event)">

答案 1 :(得分:0)

在角度表达式this中指向当前作用域对象,而不是像HTML事件属性中那样指向DOM元素。

您需要将DOM节点传递到$event.target中可用的ngClick处理程序:

ng-click="clickedBar($event.target)"