ウェブサイトのすべてのページに、自己更新型の非表示の iframe が含まれています。更新するたびに、新しいアラートがないかデータベースをチェックします (Web サイトは従来の ASP でコーディングされています)。iframe が読み込まれて新しいアラートが見つかると、mp3 通知音を再生する埋め込みタグが含まれます。
私の問題は、iframe が埋め込みタグで読み込まれると、ユーザーがその時点で入力していた場合、カーソルがテキスト フィールドにフォーカスを失うことです。
これは、Safari、FireFox、または Chrome では問題ではないようです... IE のみで、IE 9 を実行しています。この Web サイトに音声を追加することを敢えてしたのはこれが初めてです...少なくとも、言及されているすべてのブラウザーの最新バージョンでこれを機能させることができれば幸いです。
これが私の埋め込みタグです:
<embed hidden="true" autoplay="true" src="/AllInclude/Sounds/Notification_1.mp3" height="0px" style="overflow:hidden"></embed>
iframe を含む私のコードは次のとおりです。
<iframe src="/AllInclude/AlertChecker.asp" style="overflow:hidden;height:0px;position:absolute;top:-1000px" frameborder="no"></iframe>
私のiframeがそれ自体を更新するために使用するものは次のとおりです。
<script type="text/javascript">
setTimeout ('ReloadPage()', 15000 );
function ReloadPage() {
window.location = window.location;
}
</script>
ありがとう!
アップデート:
埋め込みタグの代わりに html5 オーディオ タグの作業バージョンを取得できました...ただし、オーディオ タグは html5 であるため、これを機能させるには、すべてのページに「DOCTYPE html」タグを追加する必要があります。すなわち。このタグは、古い ASP Web サイトの互換性に大きな問題を引き起こします...残念ながら、html5 はオプションではありません。