2012-07-24 33 views
1

使用谷歌Chrome瀏覽器版本11和jQuery提供語音識別的Webkit忽略onwebkitspeechchange回調

<input type="text" id="txtAns" x-webkit-speech="x-webkit-speech" onwebkitspeechchange="onChange()" /> 

我把一個js jQuery的文件中的onChange()函數,我在我的網頁

的頭部引用

語音識別成功後,應該調用onChange函數,但不是。如果我在頁面上創建一個名爲onChange()的javascript函數,它會被調用。任何爲什麼沒有被稱爲jQuery版本的原因?

+1

你可能要張貼不工作的代碼。 – 2012-07-24 22:10:30

回答

3

我想你把腳本放在dom的head部分。嘗試將腳本放在底部,如果您想將其包含在頭部,也可以嘗試添加文檔。

<input id="queryField" type="text" x-webkit-speech> 

的Javascript


<script> 
var field = document.querySelector('#queryField'); 
field.onwebkitspeechchange = function(e) { 
    console.log("You have spoken"); 
}; 
</script> 

jQuery的


<script> 
    $('#queryField').bind('webkitspeechchange', function() { 
    console.log("You have spoken"); 
    }); 
</script> 
+0

非常非常有幫助的答案。我可以證實使用'bind'的第二種解決方案絕對有效。 – Arijoon 2014-04-05 22:36:31