2012-01-16 83 views

回答

4

這就是我已經想通了,在W3C Speech Input API Specification (Draft)確實在寫的Chrome還沒有實施這些作爲onwebkitspeechstart和onwebkitspeechend時間指定onspeechstartonspeechend但是。

所以我的工作是創建兩個輸入元素,一個使用x-webkit-speech,但寬度很小,所以它只顯示麥克風圖標。其他輸入不包含x-webkit-speech。這使我可以檢測x-webkit-speech輸入上的onclick事件,並在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); 
    } 
+0

減少輸入的大小會覆蓋我的Ubuntu Chromium上的左側填充(用於圖標)。所以輸入值會超過圖標。 – 2012-02-22 10:29:06

+0

在這種情況下,非'-webkit'前綴無用,因爲麥克風只在Chrome中可見。 – mattbasta 2012-08-19 00:47:17

+0

非常真實,真的不記得寫這個,也許我是未來打樣,但似乎有點矯枉過正。 – 2012-08-19 04:15:31

1

此時不可能,也許永遠不會。

這是一個實驗控件,渲染是由瀏覽器自己完成的。在這一點上,無法自定義或綁定麥克風圖標上的事件。

也只依靠少數人能夠支持的東西,對於一個特定的實驗來說是很好的。

您可以在http://www.webkit.org/上留下建議,但我們應該等待HTML5標準才能獲得它的所有權力。

問候

+1

我正在寫一個Chrome擴展,所以我的所有用戶都將有機會獲得這一功能。我開始認爲我只需要在麥克風上覆蓋一些東西來捕捉點擊,但我還沒有測試過它。 – 2012-01-16 18:59:45