INASOFT 管理人のひとこと


フリーソフトダウンロードサイト「INASOFT」の管理人 矢吹拓也 が日々の「ひとこと」を語るページです。
2021年1月1日より、旧ブログ(blog.inasoft.org)からお引越ししました。
・INASOFT Webサイト: https://www.inasoft.org/
・管理人のふたこと(長文記事/寄稿文): https://www.inasoft.org/talk/
本業の方のお仕事が再び忙しくなりつつあるので、断続的にしばらく更新が止まることがあります。

目次 | ←前へ / 2014-05-11 13:00 / 次へ→ / 最新へ⇒

■また404ページで遊んでみた

2014/ 5/11 13:00:00


RSSRSS配信中

https://www.inasoft.org/








管理人のふたこと「遊びで404ページの作成」で書いた、オリジナルの404ページですが、もうちょっと進化させてみました。

JavaScriptで、音を鳴らしてみる練習をしてみたいと思いまして。
ルーレットの変化と共に、ピピピッという音を鳴らしてみるようにしています。

*.inasoft.org 配下で、適当に存在しないURLを叩くと、このエラーページが出てきます。
(いちおう今回から、フィードバック用のフォーム(SSL)を置いてあるページについても適用できるようにがんばってみましたが、たぶん役に立つことはないんでしょうけどね)

今回、この機能を実現する上では、JavaScriptの Audio() を使っています。
ブラウザにより利用できる音声ファイルが異なるらしいと聞きましたので、とりあえず、ogg, acc, mp3, wav の4種類を準備。
(多分、oggとaccがあれば事足りるとは思いましたが、いちおう練習で)

で、ただ単に play() を実行するだけでは、(音声編集ソフトが勝手に挿入する前後の微妙な無音部分含め)音が鳴り終わるまで次の音が鳴らせませんので、play() の前に pause() とか currentTime = 0 を入れるようにしています。

ただ、それでもブラウザの実行効率によっては、うまく音が出ません。
プリロードも、うまくやってくれるブラウザとやってくれないブラウザがあるみたいで、うまくいかないこともあるみたい。

一番うまく音を鳴らしてくれるのは、Google Chromeのようで。
FirefoxとIEは次点。

iPhone5sのSafariでは、pause() とか currentTime = 0 を入れると、逆に音が鳴りづらいみたいですね。
(入れなければ、とりあえず音は鳴るものの、鳴り方はIEよりも劣る)
iPhone対応は、今後の課題ということで。

参考にしたサイト
 ・JavaScriptで音を鳴らす - yamblog
 ・HTML5のaudio要素とJavaScriptで作るオーディオプレイヤー - mae's blog






目次 | ←前へ / 2014-05-11 13:00 / 次へ→ / 最新へ⇒


目次の表示:


ブログではないので、コメント機能とトラックバック機能は提供していません。ご質問・ご意見等はメールフィードバックまたはTwitter等からお願いします。いただいたご質問・ご意見などは、この「管理人のひとこと」の記事に追加、あるいは新規の記事にする形で一部または全文をそのまま、あるいは加工させていただいた上で、ご紹介させていただく場合があります。
当サイトでは掲載内容による不具合等に関する責任を持ちません。また、内容の正確性についての保証もありませんので、情報をご利用の際は、利用者の自己責任で確認をお願いします。本ページは公開から1年半後の任意のタイミングで削除される予定です。




2555636 (+0241)[+0539]

Copyright© 2010-2021 INASOFT