iBooks中的jQuery

时间:2014-08-06 08:54:49

标签: javascript jquery ibooks epub3

我正在尝试为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');
        }
    });
});

1 个答案:

答案 0 :(得分:0)

  1. 尝试使用$(document).bind('pageinit', function() {…});代替$(document).ready…
  2. 我建议将jQuery和jQuery Mobile(http://jquerymobile.com)一起用于iBooks中的小部件。