我有一个锚点标记的列表,每个div中的每个内容都有控制,可以通过加载的内容来回移动。但我不能让它触发下一个或上一个兄弟的click():下一次被点击的锚点列表不起作用
var current;
var request = new XMLHttpRequest();
request.open("GET", "EPUBS/" + localStorage.book, false);
if(request.overrideMimeType){
request.overrideMimeType('text/plain; charset=x-user-defined');
}
request.send();
var file = request.responseText;
var zip = new JSZip(file);
var $content = $(zip.file(localStorage.selected + "/toc.ncx").asText()).find("navPoint");
$content.each(function(){
$('#navbar').append("<a href = '#' id = '" + $(this).children('content').attr('src') + "' > " + $(this).children('navLabel').children('text').text() + "</a><br/>");
});
$("#navbar > a").click(function(event) {
event.preventDefault();
var t2 = ($(this).attr('id')).split("#");
var $tr = $(zip.file("6130/" + t2[0]).asText());
document.getElementById('main').innerHTML = "";
$('#main').append('<h1>' + $(this).text() + '</h1>');
document.getElementById('main').innerHTML += $tr.text();
current = t2;
});
$("#prev").click(function(event) {
event.preventDefault();
$('#' + current).prev().click();
});
$("#next").click(function(event) {
event.preventDefault();
$('#' + current).next().click();
});
<div id = 'navbar'>
</div>
<div id = 'main'>
<h1 id = 'mHeading'>Book</h1>
<img src = 'book.png' width = '500px'/>
<p id = "d"></p>
</div>
<div id = 'controls'>
<table>
<tr>
<td width = "12%"><a href = "#" id = "c1" onclick = "document.getElementById('main').style.color = 'black'; document.getElementById('main').style.backgroundColor = 'white';">black on white</a></td>
<td width = "12%"><a href = "#" id = "c2" onclick = "document.getElementById('main').style.color = 'white'; document.getElementById('main').style.backgroundColor = 'black';">white on black</a></td>
<td width = "10%"></td>
<td><a href = "#" id = "prev" ><</a></td>
<td><a href = "#" id = "next" >></a></td>
<td width = "5%"><a href = "#" id = "s1" style = "font-size: 12px" onclick = "document.getElementById('main').style.fontSize = '14px'">A</a></td>
<td width = "5%"><a href = "#" id = "s1" style = "font-size: 16px" onclick = "document.getElementById('main').style.fontSize = '16px'">A</a></td>
<td width = "5%"><a href = "#" id = "s1" style = "font-size: 20px" onclick = "document.getElementById('main').style.fontSize = '20px'">A</a></td>
</tr>
</table>
</div>
我写错了吗?第一个.click函数完美地工作
编辑:添加了代码的其余部分,但它使用了很多外部文件加载,他们工作,但是我只是不能到达下一个或上一个锚添加在第一次点击的方法
你可以复制你的HTML,加上变量'current'初始化吗?或者,制作一个当前解决方案的jsFiddle - 可以更容易地找出真正发生的事情。 – 2013-04-10 08:16:19