AJAXと一度音を出す

さて、ここに問題があります。私たちには、さまざまな施設全体で状況の更新を表示するウェブサイトがあります(すべてLCDにはフルスクリーンのIEページがあります)。今すぐWYSIWYGエディタで管理ページに行き、メッセージ/アップデートを入力して.txtファイル(alert.txt)に保存し、AJAX経由で画面上のページを更新します。画面上のページは、5秒の設定間隔で更新をチェックします。

私が今したいのは、アップデートが与えられたときに警告するサウンドを鳴らすことです(画面には重大なネットワークエラーなどしか表示されません)

私が使う

<body onload="window.setTimeout('loadXMLDoc()',1000);">

これを呼び出す:

<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
  {
  document.getElementById("changes").innerHTML=xmlhttp.responseText;
  }
}
xmlhttp.open("GET","alerts.txt",true);
xmlhttp.send();
}
</script>

テキストファイルに埋め込みHTMLコード(Flashオブジェクトをロードすると一度再生するFlashオブジェクトを作成したもの)を使用してサウンドクリップを追加しようとしましたが、これは繰り返しごとに1回再生されます。変更がない場合でも。

ハープ?

2
このタグ付きjQueryとPHPはなぜですか?
追加された 著者 ManseUK,
私はjQueryの質問に答えようとここに来ました...しかしあなたの丁寧な見方で私は私の答えを追加します....
追加された 著者 ManseUK,
テキストファイルはPHPで編集されますが、Jqueryは間違いです。しかし、ちょうどタグナチであるか、質問に答えるためにここに来ましたか?
追加された 著者 Rudy van Sloten,

1 答え

changes divが更新されたら、 alerts.txt にフラッシュを追加する代わりに、新しいDOMオブジェクトを作成します。

if (xmlhttp.readyState==4 && xmlhttp.status==200)
  {
  document.getElementById("changes").innerHTML=xmlhttp.responseText;
 //Add Flash object to DOM
   var emb = document.createElement("embed");
   emb.setAttribute("type","application/x-shockwave-flash");   
   emb.setAttribute("autostart","true"); 
   emb.setAttribute("data","");
  }
}

サウンドフラッシュファイルのURLと一致するようにURLを変更し、設定する必要のある属性を追加する必要があります

このアプローチでは、オブジェクトが毎回作成されるという点で問題があります。だから、おそらくあなたは要素を最初に削除してからそれを再追加することができます。

Also check out this answer -> Playing dynamically embedded sound object via Javascript

0
追加された
コードが動作していない、埋め込みが作成されていません。
追加された 著者 Rudy van Sloten,
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript