声音不会在一个页面上播放,而在另一个页面上播放

时间:2016-05-02 17:32:24

标签: javascript class audio

INTRO

我有两个页面,其中有多个div具有相同的类名" listtitle"。当用户点击div时,它发出声音。一个页面位于父目录中,另一个页面位于子目录(1级)中,jquery文件位于另一个子目录(1级)中。

SCRIPT

var obj0 = document.createElement("audio");
    obj0.src ="../airslide2.mp3";
    obj0.volume = 0.2;
    obj0.autoPlay = false;
    obj0.preLoad = true;
    $(".listtitle").click(function() {
        obj0.play();
    });

来自两个页面的HTML SNIPPET

<div id="listbox1" class="listbox">
<div class="listtitle">
</div>
</div>

问题

我在两个页面上使用相同的jquery文件路径调用相同的脚本。当点击listtitle div时,有没有人看到或知道什么可能阻止脚本在第2页上工作?

注意

出于测试目的,我已从第2页中删除了所有其他jquery / javascript(音频脚本除外),以确保我不会处理冲突的脚本。

1 个答案:

答案 0 :(得分:0)

大啊时刻。虽然经验丰富的开发人员会抓住这一点,但我还是会为那些像我这样的人留下这篇文章。

虽然我的jquery代码的相对路径对于两个页面都是正确的。第1页(父目录)|第2页(子目录) - 父页面的obj0.src = .. /不正确。

困惑

我认为mp3文件必须是相对于jquery脚本的,如果我没有创建一个元素就是正确的。因为我为每个页面创建了一个元素,即document.createElement(&#34; audio&#34;);父页面中mp3的相对路径会有所不同。

解决方案

我为父目录页面创建了一个单独的脚本,并从obj0.src中删除了../。