我想制作一个 Web 应用程序,它需要处理许多简短的用户输入,但用户应该能够使用麦克风而不是键入所有文本。
我知道 iPhone 和 Android 智能手机的键盘上确实有一个“麦克风按钮”,但是这两个平台都需要先聚焦输入才能开始录音。如果我只有一个按钮会好得多,否则你不会真的觉得你打算用你的声音来执行输入。
我尝试在我的 Android 手机上使用 x-webkit-speech
属性,但是 Dolphin HD 和 Google Chrome 都没有显示真实的语音输入字段。
有没有一种方法可以直接打开语音输入对话框而无需首先显示键盘,或者我只是期望太多?
最佳答案
(假设在浏览器中实际启用了语音输入,)您只能显示“麦克风按钮”并将输入重定向到您想要的任何位置,如本例中的文本框:
<script type="text/javascript">
function transcribe(words){
document.getElementById("mic").value="";
document.getElementById("speech").value=words;
document.getElementById("speech").focus();
}
</script>
Speech input for textarea - click the microphone icon and talk: <br>
<br>
<textarea id="speech" cols="50"></textarea>
<input id="mic" style="width:15px; height:20px; border:0px; background-color:transparent" x-webkit-speech onwebkitspeechchange="transcribe(this.value)">
希望这对您有所帮助!
关于android - 移动浏览器上的直接语音/语音输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11438718/