JAVAScript监听文本实现队列顺序语音报号
1 //语音报号 2 function soundplay() { 3 4 if(!+[1,]) { 5 var musicFile = "<embed hidden='true' id='music0' autostart='false' src='/resources/war/0.wav' />" + 6 "<embed hidden='true' id='music1' autostart='false' src='/resources/war/1.wav' /> " + 7 "<embed hidden='true' id='music2' autostart='false' src='/resources/war/2.wav' />" + 8 "<embed hidden='true' id='music3' autostart='false' src='/resources/war/3.wav' />" + 9 "<embed hidden='true' id='music4' autostart='false' src='/resources/war/4.wav' /> " + 10 "<embed hidden='true' id='music5' autostart='false' src='/resources/war/5.wav' /> " + 11 "<embed hidden='true' id='music6' autostart='false' src='/resources/war/6.wav' /> " + 12 "<embed hidden='true' id='music7' autostart='false' src='/resources/war/7.wav' /> " + 13 "<embed hidden='true' id='music8' autostart='false' src='/resources/war/8.wav' /> " + 14 "<embed hidden='true' id='music9' autostart='false' src='/resources/war/9.wav' />"; 15 $(".pay_obj").append(musicFile); 16 } 17 18 }; 19 20 21 function otherBrowserMusicEvent(event) { 22 23 switch(event.keyCode) { 24 case 48 : 25 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/0.wav' />"); 26 break; 27 case 49 : 28 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/1.wav' />"); 29 break; 30 case 50 : 31 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/2.wav' />"); 32 break; 33 case 51 : 34 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/3.wav' />"); 35 break; 36 case 52 : 37 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/4.wav' />"); 38 break; 39 case 53 : 40 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/5.wav' />"); 41 break; 42 case 54 : 43 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/6.wav' />"); 44 break; 45 case 55 : 46 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/7.wav' />"); 47 break; 48 case 56 : 49 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/8.wav' />"); 50 break; 51 case 57 : 52 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/9.wav' />"); 53 break; 54 case 96 : 55 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/0.wav' />"); 56 break; 57 case 97 : 58 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/1.wav' />"); 59 break; 60 case 98 : 61 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/2.wav' />"); 62 break; 63 case 99 : 64 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/3.wav' />"); 65 break; 66 case 100 : 67 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/4.wav' />"); 68 break; 69 case 101 : 70 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/5.wav' />"); 71 break; 72 case 102 : 73 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/6.wav' />"); 74 break; 75 case 103 : 76 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/7.wav' />"); 77 break; 78 case 104 : 79 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/8.wav' />"); 80 break; 81 case 105 : 82 $(".pay_obj").append("<embed hidden='true' width='0' height='0' autostart='false' src='/resources/war/9.wav' />"); 83 break; 84 } 85 return false; 86 } 87 88 function IEBrowserMusicEvent(event) { 89 switch(event.keyCode) { 90 case 48 : 91 music0.play(); 92 break; 93 case 49 : 94 music1.play(); 95 break; 96 case 50 : 97 music2.play(); 98 break; 99 case 51 : 100 music3.play(); 101 break; 102 case 52 : 103 music4.play(); 104 break; 105 case 53 : 106 music5.play(); 107 break; 108 case 54 : 109 music6.play(); 110 break; 111 case 55 : 112 music7.play(); 113 break; 114 case 56 : 115 music8.play(); 116 break; 117 case 57 : 118 music9.play(); 119 break; 120 case 96 : 121 music0.play(); 122 break; 123 case 97 : 124 music1.play(); 125 break; 126 case 98 : 127 music2.play(); 128 break; 129 case 99 : 130 music3.play(); 131 break; 132 case 100 : 133 music4.play(); 134 break; 135 case 101 : 136 music5.play(); 137 break; 138 case 102 : 139 music6.play(); 140 break; 141 case 103 : 142 music7.play(); 143 break; 144 case 104 : 145 music8.play(); 146 break; 147 case 105 : 148 music9.play(); 149 break; 150 } 151 } 152 153 /***********************************语音报号结束*********************/
实现队列删除首元素:
1 function removeFirst(array){ 2 var len = 0; 3 if(array.length>0){ 4 len = array.length - 1; 5 } 6 var newArray = new Array(len); 7 for(var i=0;i<array.length-1;i++){ 8 newArray[i] = array[i+1]; 9 } 10 return newArray; 11 };
文本监听,兼容ie和非ie浏览器
1 var array = new Array(); 2 var tag = 0; 3 4 $("#phone").keyup(function(event){ 5 var test = document.getElementById("whetherTelSound").checked; 6 var code = event.keyCode; 7 if(code>=48 && code<=57 || code>=96 && code<=105){ 8 array.push(code); 9 } 10 if(test){ 11 if(array.length>0 && tag == 0){ 12 tag = 1; 13 setTimeout(function(){ 14 if(!+[1,]) { 15 IEBrowserMusicEvent(array[0]); 16 } else { 17 otherBrowserMusicEvent(array[0]); 18 } 19 array = removeFirst(array); 20 },100); 21 var interval = setInterval(function(){ 22 if(array.length>0){ 23 if(!+[1,]) { 24 IEBrowserMusicEvent(array[0]); 25 } else { 26 otherBrowserMusicEvent(array[0]); 27 } 28 array = removeFirst(array); 29 }else{ 30 clearInterval(interval); 31 tag = 0; 32 } 33 },500); 34 } 35 36 }
附:
1、准备0-9十个语音文件
下载地址:http://download.csdn.net/detail/dignity568/4344108
推荐使用:http://download.csdn.net/detail/dignity568/6660783,文件更小,声音清晰短促
2、android语音报号:
a、android应用Mediaplayer监听文本框实现语音报号【http://www.cnblogs.com/qsl568/archive/2012/06/01/2529976.html】
b、android应用SoundPool实现语音报号【http://www.cnblogs.com/qsl568/archive/2013/01/30/2882420.html】