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(音频脚本除外),以确保我不会处理冲突的脚本。
答案 0 :(得分:0)
大啊时刻。虽然经验丰富的开发人员会抓住这一点,但我还是会为那些像我这样的人留下这篇文章。
虽然我的jquery代码的相对路径对于两个页面都是正确的。第1页(父目录)|第2页(子目录) - 父页面的obj0.src = .. /不正确。
困惑
我认为mp3文件必须是相对于jquery脚本的,如果我没有创建一个元素就是正确的。因为我为每个页面创建了一个元素,即document.createElement(&#34; audio&#34;);父页面中mp3的相对路径会有所不同。
解决方案
我为父目录页面创建了一个单独的脚本,并从obj0.src中删除了../。