【问题标题】:function not defined onclick with javascript函数未定义 onclick 与 javascript
【发布时间】: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


【解决方案1】:

你需要像这样将函数添加到窗口中:

function playSound(){
    aud.play();
     var b1= document.getElementbyId("box"+num);
    var b1.has_been_played == true;

}

window.playSound = playSound;

【讨论】:

  • 函数声明已经创建了全局变量!这是问题中的代码没有错误的少数几件事之一。
  • 我遇到了同样的问题,这对我有用!谢谢!
猜你喜欢
  • 1970-01-01
  • 2013-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-01
  • 2019-12-03
  • 2018-06-09
  • 1970-01-01
相关资源
最近更新 更多