jQuery in iBooks

jQuery in iBooks

本文关键字:iBooks in jQuery      更新时间:2023-09-26

我正在尝试为iBooks电子书创建一个交互式词汇表:每次你点击一个术语,它的定义就会显示在页面的末尾。您可以通过再次单击该术语或单击另一个术语来隐藏定义。在这种情况下,有两项。我用过jQuery,在Safari、Google Chrome和Mozilla Firefox上,一切似乎都运行得很好。然而,它在桌面版iBooks中不能正常工作(在iPad版iBooks中可以正常工作),你只能打开定义一次,并且不能隐藏它们。

怎么了?

我使用的代码是:
$(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');
        }
    });
});
  1. 尝试使用$(document).bind('pageinit', function() {…});代替$(document).ready…
  2. 我建议使用jQuery和jQuery Mobile (http://jquerymobile.com)在iBooks中的小部件。