forked from mrlan/EnglishPal
				
			Fix bug 547
							parent
							
								
									d8af2a7e54
								
							
						
					
					
						commit
						2095550f33
					
				|  | @ -3,6 +3,7 @@ var Reader = (function() { | ||||||
|     let current_position = 0; |     let current_position = 0; | ||||||
|     let original_position = 0; |     let original_position = 0; | ||||||
|     let to_speak = ""; |     let to_speak = ""; | ||||||
|  |     let current_rate = 1; // 添加这一行,设置默认速率为 1
 | ||||||
| 
 | 
 | ||||||
|     function makeUtterance(str, rate) { |     function makeUtterance(str, rate) { | ||||||
|         let msg = new SpeechSynthesisUtterance(str); |         let msg = new SpeechSynthesisUtterance(str); | ||||||
|  | @ -24,12 +25,24 @@ var Reader = (function() { | ||||||
|         reader.speak(msg); |         reader.speak(msg); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     function updateRate(rate) { | ||||||
|  |         // 停止当前的朗读
 | ||||||
|  |         stopRead(); | ||||||
|  | 
 | ||||||
|  |         // 更新当前速率
 | ||||||
|  |         current_rate = rate; | ||||||
|  | 
 | ||||||
|  |         // 重新开始朗读
 | ||||||
|  |         read(to_speak, current_rate); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     function stopRead() { |     function stopRead() { | ||||||
|         reader.cancel(); |         reader.cancel(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     return { |     return { | ||||||
|         read: read, |         read: read, | ||||||
|         stopRead: stopRead |         stopRead: stopRead, | ||||||
|  |         updateRate: updateRate // 添加这一行,将 updateRate 方法暴露出去
 | ||||||
|     }; |     }; | ||||||
| }) (); | }) (); | ||||||
|  |  | ||||||
|  | @ -287,6 +287,11 @@ | ||||||
|             $('#read_all').show(); |             $('#read_all').show(); | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |     document.getElementById('rangeComponent').addEventListener('input', function() { | ||||||
|  |     var rate = this.value; | ||||||
|  |     Reader.updateRate(rate); | ||||||
|  | }); | ||||||
|  | 
 | ||||||
| </script> | </script> | ||||||
| </body> | </body> | ||||||
| <style> | <style> | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue