几年前,看到一台湾人写的一段程序(好像是《日语基础》),在网页上实现音视频与文字的同步播放(就是音视频播到哪部分,相应的文字就亮显,点击某一句话,播放器将从这句话开始播放。)当时觉得这个很适合语言教学。于是就查看了代码,写了很多函数,有些代码还加了密。几百行代码看了人发晕。最近本人试着写了一段代码,实现同样的功能,代码很简洁,主要功能是实现在浏览器上实现复读机的功能(缺少录音功能)。
我采用网上的《英语900句》的语音和文字,共两个页面,一个页面实现传递脚本参数到第二个页面;第二个页面实现语音与文字同步。主要技术采用Dhtml。全部采用客户端脚本。
演示地址:http://www.whtvu.com.cn/english900
设计思路:
(一) 动态加载文字和声音
将文字放在一个外部js里。代码如下:
http://www.gaodaima.com/?p=28180
var e_array = new Array("Hello! Hi!", "Good morning afternoon evening!", "I'm Kathy King. ",
………..);
var h_array=new Array("你好!",
"早晨(下午 晚上)好!",
"我是凯西•金。",
…..);
var t_array = new Array(7,10,16,19…….);
var l=e_array.length;
var title="Greetings";
var h_title="问候语"
ready = true;
分析:e_array为英语句子;h_array为中文意思;t_array为每句开头的时间;title为这段对话的标题(英文);h_title为为这段对话的标题(中文)。ready = true为每一个外部JS里都有的,主要是为了检测外部JS是否下载到客户端(后面有介绍)。
(二) 让播放器动态播放不同的声音(后有介绍)
(三) 播放器播到不同的位置,相应的文字以某一颜色显示(要随时检测播放器的位置。后有介绍)