要实现的功能是输入框获得焦点后播放里面的数字,现在每一位数字对应一个wav文件。用for循环文本框内的数字值进行播放,只听到最后一位数字的播放效果,这是为什么?
代码如下:<HTML>
<HEAD>
<TITLE>test</TITLE>
<SCRIPT language=JavaScript>
function play(key){
//alert('1');
var sound = key+'.wav';
document.all.bgss.src=sound;
} function playString(obj){
var value = obj.value;
if(value && value.length > 0){
for(var i = 0; i < value.length; i++){
play(value.substring(i,i+1));
}
}
}
</SCRIPT> </HEAD>
<BODY>
<BGSOUND id=bgss loop=false autostart=false>
<FORM name=form1 method=post>
<TABLE>
<TBODY>
<TR>
<TD width="25%">
只读显示框
</TD>
<TD>
<INPUT id=input onFocus=playString(this); readonly="true"
value='73.45'>
</TD>
</TR>
</TBODY>
</TABLE>
</FORM>
</BODY>
</HTML>如果在每次循环播放之前,用alert弹出一个消息框(就是js函数里那一行注释)的话,可以听到每一位数字的播放效果,但这样就不是想要的功能了。请各位高手帮忙解决这个问题,谢谢!!
代码如下:<HTML>
<HEAD>
<TITLE>test</TITLE>
<SCRIPT language=JavaScript>
function play(key){
//alert('1');
var sound = key+'.wav';
document.all.bgss.src=sound;
} function playString(obj){
var value = obj.value;
if(value && value.length > 0){
for(var i = 0; i < value.length; i++){
play(value.substring(i,i+1));
}
}
}
</SCRIPT> </HEAD>
<BODY>
<BGSOUND id=bgss loop=false autostart=false>
<FORM name=form1 method=post>
<TABLE>
<TBODY>
<TR>
<TD width="25%">
只读显示框
</TD>
<TD>
<INPUT id=input onFocus=playString(this); readonly="true"
value='73.45'>
</TD>
</TR>
</TBODY>
</TABLE>
</FORM>
</BODY>
</HTML>如果在每次循环播放之前,用alert弹出一个消息框(就是js函数里那一行注释)的话,可以听到每一位数字的播放效果,但这样就不是想要的功能了。请各位高手帮忙解决这个问题,谢谢!!
解决方案 »
- EXTJS Combo框 表单传值问题
- 求助,这个是发新浪微博的api,我现在想把url放入title里,应该怎样改?
- jquery的ui tabs插件怎么没有看到样式?
- JS 里有一段代码,能否先放进数据库,再调用?
- 我用function关键字创建了类,可是在调用类方法的时候却发现“this”并不是指本类?
- 怎么得到一个div的绝对位置啊
- 急·怎么比较页面数值大小 !
- javascript 中怎样使用jsp中声明的变量?
- 真的不能再简单的问题了,我都不好意思问了!
- 【求助】【求助大神】截取数字问题
- 用JS是否能检测到iframe(跨域)页面中的点击事件?
- 设置div中<a href="#">的href
.................................... for(var i = 0; i < value.length; i++){
with({i : i})play(value.substring(i,i+1));
}
......................................
试试~