ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript は携帯電話の振動 API コードを実装します
新しい API がリリースされました。 HTML5 は (近々) ユーザーのデバイスの振動をサポートする予定です。これは明らかに非常に興味深いもので、たとえば、ユーザーにリマインダーを送信し、ゲーム エクスペリエンスを向上させることができます。これを必要とする友人全員が参照できるようになります。
最新のブラウザーで提供される新しい API は、JavaScript 地理位置情報 API などの従来のデスクトップ アプリケーションではなく、携帯電話アプリケーションにますます傾いています。モバイル アプリケーションのみを対象としたもう 1 つの JavaScript API は、Vibration API です。明らかに、この API を使用すると、モバイル プログラマーは JavaScript を使用して電話の振動機能を呼び出し、振動モードと持続時間を設定できます。
振動 API に対するブラウザのサポートを確認する
使用する前に、現在のアプリケーション環境とブラウザが振動 API をサポートしているかどうかを確認することをお勧めします。検出方法は次のとおりです:
コードは次のとおりです:
// Standards ftw! var supportsVibrate = "vibrate" in navigator;
window.navigator オブジェクトには振動に関する API が 1 つだけあります: vibrate 。
振動 API の基本的なアプリケーション
navigator.vibrate 関数は、数値パラメーターまたは数値配列を受け入れることができます。配列パラメーターを使用する場合、奇数の桁は振動する秒数であり、偶数の桁は振動します。 -数字の数字は待機秒数です。
// 1 秒間振動します
navigator.vibrate(1000);
// 複数回振動します
// パラメーターは 3 秒間振動し、2 秒間待機し、その後 1 秒間振動します
navigator.vibrate([3000, 2000, 1000]);
振動を停止したい場合は、navigator.vibrate メソッドに 0 または空の配列を渡すだけです:
// 振動を停止します
navigator.vibrate(0); navigator.vibrate([]);
必須 navigator.vibrate メソッドを呼び出しても、電話機は周期的に振動しません。パラメーターが数値の場合、振動は 1 回発生してから停止します。パラメータが配列の場合、振動は配列の値に従って振動し、その後振動が停止します。
連続振動
setInterval メソッドと clearInterval メソッドを使用するだけで、携帯電話を連続的に振動させる効果を生成できます。
var vibrateInterval; // Starts vibration at passed in level function startVibrate(duration) { navigator.vibrate(duration); } // Stops vibration function stopVibrate() { // Clear interval and stop persistent vibrating if(vibrateInterval) clearInterval(vibrateInterval); navigator.vibrate(0); } // Start persistent vibration at given duration and interval // Assumes a number value is given function startPeristentVibrate(duration, interval) { vibrateInterval = setInterval(function() { startVibrate(duration); }, interval); }
上記のコードは、次の振動パラメーターのみを対象としています。パラメータが配列の場合は、その合計期間を計算し、その特性に基づいてループする必要もあります。
Vibration API の使用シナリオ
この API は明らかに携帯電話デバイスを対象としています。モバイル WEB モバイル アプリケーションを開発する場合、この振動機能は Web ゲームやマルチメディア アプリケーションを開発する場合に不可欠な優れた技術です。例えば、ユーザーが携帯電話でWEBゲームをプレイしているときに、ゲーム内で爆発が起きて携帯電話が振動したとき、それは優れたユーザーエクスペリエンスと言えるでしょうか?
この JavaScript 振動 API についてどう思いますか?すぐに人気が出ると思いますか?まだあまり役に立ちませんか?
上記はこの章の全内容です。その他の関連チュートリアルについては、JavaScript ビデオ チュートリアル、HTML5 ビデオ チュートリアル をご覧ください。