音声入力APIに対応したGoogle Chrome 11の正式版がでたので、全てのテキストボックスで音声入力できるようにするブックマークレットを作ってみた。
ブックマークレットを実行後、テキストボックスに表示されるマイクアイコンをクリックすると、音声入力できるようになる。
音声データの解析は、ブラウザ側ではなくGoogleのサーバで行なっているため、オフラインでは使えない。
後、どうもテキストエリアでは音声入力はできないらしい。
ブックマークレットを実行後、テキストボックスに表示されるマイクアイコンをクリックすると、音声入力できるようになる。
音声データの解析は、ブラウザ側ではなくGoogleのサーバで行なっているため、オフラインでは使えない。
後、どうもテキストエリアでは音声入力はできないらしい。
/*
================================================================================
Name : 全てのテキストボックスを音声入力に対応させるBookmarklet Ver1.0.0
In : [none]
Out : [none]
Note : 全てのテキストボックスを音声入力に対応させます。
--------------------------------------------------------------------------------
Version : Ver1.0.0 | 2011/04/30 | 新規作成
--------------------------------------------------------------------------------
License : MIT license
URL : www.kanasansoft.com
================================================================================
*/
(function(){
var elements=[];
var inputs=document.getElementsByTagName("input");
for(var i=0,l=inputs.length;i<l;i++){
var input=inputs[i];
if(!input.hasAttribute("type")||input.getAttribute("type")==="text"){
elements.push(input);
}
}
elements=elements.concat(Array.prototype.slice.apply(document.getElementsByTagName("textarea")));
for(var i=0,l=elements.length;i<l;i++){
elements[i].setAttribute("x-webkit-speech","x-webkit-speech");
elements[i].setAttribute("speech","speech");
}
})()
================================================================================
Name : 全てのテキストボックスを音声入力に対応させるBookmarklet Ver1.0.0
In : [none]
Out : [none]
Note : 全てのテキストボックスを音声入力に対応させます。
--------------------------------------------------------------------------------
Version : Ver1.0.0 | 2011/04/30 | 新規作成
--------------------------------------------------------------------------------
License : MIT license
URL : www.kanasansoft.com
================================================================================
*/
(function(){
var elements=[];
var inputs=document.getElementsByTagName("input");
for(var i=0,l=inputs.length;i<l;i++){
var input=inputs[i];
if(!input.hasAttribute("type")||input.getAttribute("type")==="text"){
elements.push(input);
}
}
elements=elements.concat(Array.prototype.slice.apply(document.getElementsByTagName("textarea")));
for(var i=0,l=elements.length;i<l;i++){
elements[i].setAttribute("x-webkit-speech","x-webkit-speech");
elements[i].setAttribute("speech","speech");
}
})()