1. 程式人生 > >x-webkit-speech 輸入框中新增“小話筒”

x-webkit-speech 輸入框中新增“小話筒”

使用語音輸入作用有:
1.提供除了鍵盤和滑鼠的另一個輸入方法,針對pc使用者,當鍵盤不可用時也可以使用語音輸入。
2.為手機使用者提供更加方便的輸入方法。

lang

這玩意可以強制輸入框裡面的語音的語言種類,例如
<input type="text" x-webkit-speech lang="zh-CN"/>

1.支援的瀏覽器

x-webkit-speech是webkit核心瀏覽器的私有屬性(廢話)。但現在只能在google的chrome 11以上才能使用。
實現過程大概是捕捉到語音後,資料傳送到google的伺服器進行語音識別,然後返回結果。所以沒有足夠強大大的研發能力和伺服器資源,真沒法支援這個服務。
作為普通話不標準經常被別人吐槽的人,使用語音搜尋還是能十分準確地返回關鍵詞,我頓時感動得一塌糊塗。

2.支援的標籤

輸入標籤有input和textarea,實際上目前只有input支援。

3.檢測瀏覽器是否支援

1if (document.createElement("input").webkitSpeech === undefined) { 

2    alert("Speech input is not supported in your browser."); 

3} 

4.直接使用

為input標籤加上x-webkit-speech屬性

1<input type="search" x-webkit-speech />

捕捉到語音輸入後會直接將關鍵詞填入到輸入框裡。

5.監聽輸入

若要監聽輸入變化以便做其他處理,使用onwebkitspeechchange屬性新增處理函式。

1<input type="search" x-webkit-speech onwebkitspeechchange="onChange()"/>

1<script type="text/javascript">

2    function onChange() {

3        alert('changed');

4    }

5</script>

6.注意:

如果原input中value不為空,輸入會直接新增在原有文字後面。既然用webkit就要用placeholder了,不要再使用value為作輸入提示了。

轉自:http://hi.baidu.com/etion/item/395750dc3a6c72e7b3f7778e