【发布时间】:2017-12-04 20:53:07
【问题描述】:
我试图在单击 div 时播放音频文件,然后在下次单击 div 时暂停它。但是,我对 javascript 很陌生,第一个函数甚至没有执行,我不明白它是如何定义的。
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<style>
.floating-box {
display: inline-block;
width: 150px;
height: 75px;
margin: 10px;
border: 3px solid #73AD21;
}
.after-box {
clear: left;
border: 3px solid red;
}
.player
</style>
</head>
<script>
var has_been_played = 0;
function playSound() {
var aud=new Audio(file);
aud.play();
var b1 = document.getElementbyId("box" + num);
var b1.has_been_played == true;
}
var b1.has_been_played = pauseAud() {
document.getElementById("box" + num).setAttribute("onClick",
"javascript: pauseAud();");
}
function pauseAud() {
var aud=new Audio(file);
aud.pause();
}
</script>
<body>
<div id="box1" class="floating-box" onclick="playSound('donttalk.mp3');"></div>
<div id="box2" class="floating-box" onclick="playSound('goodvibrations.mp3');"></div>
</body>
</html>
我希望它播放声音,然后一旦单击它,变量就会更改为“has_been_played”,下次单击该 div 时,音频文件将暂停。 (希望下次你点击它会再次播放。
为什么说playSound函数没有onclick定义?
【问题讨论】:
-
您的代码中充斥着语法错误、缺少变量和(坦率地说)废话。您需要在浏览器中打开 JS 控制台并开始处理错误消息。
-
我想的差不多了;但是,唯一的错误消息是 b1.has_been_played 中的句点是一个意外的语法错误(我知道我做错了)并且“playSound”没有在点击时定义。我想弄清楚为什么 playSound 在处理更复杂的部分之前不播放声音,因为那部分非常基础。感谢您对我的无意义代码坦率...我很困惑,这就是我来寻求帮助的原因!
-
一次处理一条错误消息,按照浏览器报告的顺序。从页面加载时报告的内容开始。他们会告诉你为什么没有定义函数。
标签: javascript html