Вот то, что я выяснил, Спецификация API речевого ввода (черновик) действительно определяет onspeechstart и onspeechend , однако на момент написанияChrome еще не реализовал их как onwebkitspeechstart и onwebkitspeechend.
Поэтому моя работа заключается в создании двух элементов ввода, один из которых использует x-webkit-speech, но имеет небольшую ширину, поэтому на нем отображается только значок микрофона.Другой вход не имеет x-webkit-speech.Это позволяет мне обнаруживать событие onclick на входе x-webkit-speech, а когда происходит событие webkitspeechchange, я перемещаю текст на больший вход.
Также есть небольшая хитрость, которую я нашел, вы можете масштабироватьразмер микрофона:
#theinput {
-webkit-transform: scale(3.0, 3.0);
-moz-transform: scale(3.0, 3.0);
-ms-transform: scale(3.0, 3.0);
transform: scale(3.0, 3.0);
}