我正在尝试为iBooks电子书创建交互式词汇表:每次单击一个术语时,定义都会显示在页面的末尾。您可以通过再次单击术语或单击其他术语来隐藏定义。在这种情况下,有两个术语。我使用过jQuery,一切似乎都适用于Safari,谷歌Chrome和Mozilla Firefox。但是,它在iBooks for desktop中无法正常工作(它可以在iBooks for iPad中正常工作),您只能打开一次定义而不能隐藏它们。
可能出现什么问题?
我使用的代码是:
$(document).ready(function () {
$('a').on('touchstart click', function (e) {
e.preventDefault();
$current = $($(this).attr('href'));
if ($current.hasClass('hide')) {
resetLabels();
$current.removeClass('hide').addClass('show');
} else if ($current.hasClass('show')) {
resetLabels();
$current.removeClass('show').addClass('hide');
} else {
resetLabels();
}
function resetLabels() {
$current.siblings().removeClass('show').addClass('hide');
}
});
});
答案 0 :(得分:0)
$(document).bind('pageinit', function() {…});
代替$(document).ready…