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