JavaScriptを介してオーディオを使用するHTML5Webページがあります。正しいオーディオファイル(たとえば、oggとmp3など)をロードし、そのファイルからスプライトを正しく再生する基本バージョンがあります。この基本バージョンにはjavascriptファイルが1つしかなく、OSX(Safari、Chrome、Firefox)、iOS 5および6(Safari)、Windows 7(Firefox、Chrome)、およびAndroid4.2(Firefox)。
コードを取得して、製品版に挿入します。これで、HTMLページは他の多くのJavaScriptファイル(jquery、jquery ui、flotなど)をロードします。ただし、すべてのオーディオコードは、を介して含まれる単一のファイルに含まれています
<script src="/foo/bar/sound.js"></script>.
どちらの場合も、sound.jsのコードは、ユーザーがボタンをクリックすることで呼び出されます。上記のすべてのプラットフォーム/ブラウザの組み合わせで、組み合わせたコードはiOSを除いて機能します(iPad2とiPad3の両方でiOS 5と6でテスト済み)。私が得ているエラーは
INVALID_STATE_ERR: DOM Exception 11: An attempt was made to use an object that is not, or is no longer, usable.
これは、必要な特定のスプライトに基づいてmySound.currentTimeを設定しようとする行で発生します。
mySound.currentTime = spriteData[currentSound].start;
mySoundは私のサウンドオブジェクトであり、spriteDataは正しいです。奇妙なことに、実際のiPadで失敗する同じコードは、iOS5とiOS6のどちらをシミュレートするかに関係なく、iOSSimulatorで問題なく機能します。
この状況をデバッグするにはどうすればよいですか?私はどこを見れば何を試すべきか途方に暮れています。任意の提案をいただければ幸いです。