我在这里制作了一个简单的聊天系统http://theawesomecoder.com/c 我试图在用户输入每个在线应该听到的任何消息时生成ping声音。为此我写了一个播放声音代码,其中消息正在写入文件但是当使用ajax将消息写入文件时,没有声音被生成
<?php
session_start();
if (isset($_SESSION['user'])) {
$text = $_POST['text'];
echo "<script>playSound('button-1.wav')</script>";
$date = date('H:i:s');
$handle = fopen("messages.html", 'a+');
fwrite($handle, '<div class="message"><span class="name">' . $_SESSION['user'] . ':</span> ' . stripslashes(htmlspecialchars($text)) . '<span class="right">'.$date .'</span></div>');
fclose($handle);
}
?>
<!doctype html>
<html>
<head>
<meta charset="ISO-8859-1" />
<title></title>
<script language="javascript" type="text/javascript">
function playSound(soundfile) {
document.getElementById("dummy").innerHTML=
"<embed src=\""+soundfile+"\" hidden=\"true\" autostart=\"true\" loop=\"false\" />";
}
</script>
</head>
<body>
<span id="dummy"></span>
</body>
</html>
<?php
echo "<script>playSound('button-1.wav')</script>";
?>
答案 0 :(得分:0)
你的声音文件是否正确?您可以在加载内容时播放声音。 尽量不要使用javascript加载声音文件。将它添加到您的HTML。只需尝试使用javascript播放文件,而不是每次都嵌入它。