2012-07-11 13 views
5

Ich möchte eine Webanwendung erstellen, die mit vielen kurzen Benutzereingaben umgehen muss, aber anstatt alle Texte einzugeben, sollte der Benutzer das Mikrofon verwenden können.Direkte Sprach-/Spracheingabe im mobilen Browser

Ich weiß, dass iPhones und Android-Smartphones eine "Mikrofontaste" auf der Tastatur haben, aber beide Plattformen müssen zuerst die Eingabe fokussieren, um die Aufnahme zu starten. Es wäre viel besser, wenn ich einen nur Button hätte, denn sonst fühlt man sich nicht so, als ob man die Eingabe per Spracheingabe durchführen soll.

Ich versuchte mit dem Attribut x-webkit-speech auf meinem Android-Handy, aber entweder Dolphin HD noch Google Chrome zeigte ein echtes Spracheingabefeld.

Gibt es eine Möglichkeit, den Spracheingabe-Dialog direkt zu öffnen, ohne zuerst die Tastatur sichtbar zu machen, oder erwarte ich einfach zu viel?

Antwort

1

(Unter der Annahme, Spracheingabe wird tatsächlich im Browser aktiviert,) Sie nur die ‚Mikrofon-Taste‘ zeigen könnten, und leiten Sie den Eingang zu, wo immer Sie wollen, wie in diesem Beispiel wird ein Textfeld:

<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)"> 

Hoffe, das hilft!

Verwandte Themen