【发布时间】:2017-04-01 08:20:14
【问题描述】:
我是 javascript 的初学者,所以我很抱歉我的业余代码。 我有一段音频和一些文字是它的字幕。 我有谈话的时间戳。 例如,音频中“hi”的时间戳是“1.525487”秒。 我想在那一刻突出显示文本“hi”。
当我为“span id”使用整数时,例如“ts1”,它可以正常工作, 但是当我使用像“1.525487”这样的十进制数字时它不起作用。 我该怎么办?
感谢您的帮助。
<body>
<audio id = "adi" controls>
<source src="Greeting.mp3"></source>
</audio>
<div>
<pre>
A: <span id="ts1.525487">Hi</span> , <span id="ts2.193877">how are you doing?</span>
</pre>
</div>
<script>
var spns = document.getElementsByTagName("SPAN");
var audi = document.getElementById("adi");
audi.addEventListener("timeupdate", f1);
function f1(){
var i;
for (i = 0 ; i< spns.length ; i++){
if(spns[i].id == "ts" + audi.currentTime){
spns[i].style.backgroundColor = "red";
}
}
}
</script>
</body>
【问题讨论】:
-
究竟是什么不工作?我做了一些测试,一切似乎都在工作。在这里查看:jsfiddle.net/fx5vh936
-
当我播放音频并达到“1.525487”秒时,文本“Hi”不会突出显示。抱歉我的英语不好:(。
标签: javascript audio highlight