<div class="nav">
<div class="chapter-info"></div>
</div>
<audio src="" hidden></audio>
<div class="left-pane">
<ol>
<li> <a href="files/0/001.html">chapter1</a></li>
<li> <a href="files/0/002.html">chapter2</a></li>
<li> <a href="files/0/003.html">chapter3</a></li>
. .
. .
. .
<li> <a href="files/0/114.html"> chapter4</a></li>
</ol>
</div>
&#13;
这是一个js脚本。
for (k = 0; k < 114; k++) {
$(".chapter")[k].onclick = function() {
$(".chapter-info").innerHTML = this.href.slice(-8, -5); alert($(".chapter-info").innerHTML); read();
}
}
function read() {
n = $(".chapter-info").innerHTML;
if ($("#lock").src.match("padlock-off")) {
if ($(".lang").selectedIndex != 0) {
$("audio").src = "files/" + $(".lang").selectedIndex + "/" + n + ".mp3"; $("audio").load();
}
else {
$("audio").src = "files/" + $(".lang").selectedIndex + "/" + $("#reciter").selectedIndex + "/" + n + ".mp3"; $("audio").load();
}
}
}
&#13;
问题是,在.chapter元素上点击几下后,$(".chapter-info") = this.href.slice(-8,-5)
就不再起作用了。
对于info,.chapter
元素是锚点。我使用javascript。$()是我定义的一项功能,可以简化编程。这是它。
function $(x) {
switch (document.querySelectorAll(x).length) {
case 0: console.log("Element" + x + "has not been found"); return false; break;
case 1: return document.querySelector(x); break;
default: return document.querySelectorAll(x); break;
}
}
&#13;
欢迎任何帮助。谢谢!!