docbook-apps

  • 1.  Slow TOC tree in webhelp when there are a large number of heading entries

    Posted 03-31-2011 16:23
    Hi, I am using the webhelp output with a set of very long documents.
    I'm seeing slow performance with the Javascript table of contents tree
    when there are a large number of TOC entries. This causes a serious
    problem because Internet Explorer opens a dialog box asking whether
    I'd like to "stop running this script."

    Internet Explorer 8 displays the dialog box when I include about 690
    headings in my test document. The performance in Firefox, Chrome, and
    Safari aren't that bad. The Internet Explorer dialog is really
    unacceptable because it interrupts each page load.

    I'm looking into the underlying JavaScript. The developer tools in IE8
    tell me that a function named "L" is taking the most time. I think
    that L is a part of the jquery libray. I'm not familiar with tuning
    JavaScript though.

    Has anyone else encountered this problem? Do you know a way to speed
    up the TOC loading?

    Thanks for your help.

    Peter Desjardins



  • 2.  Re: [docbook-apps] Slow TOC tree in webhelp when there are a large number of heading entries

    Posted 03-31-2011 21:36
    On Thu, Mar 31, 2011 at 9:52 PM, Peter Desjardins
    <peter.desjardins.us@gmail.com> wrote:
    > Hi, I am using the webhelp output with a set of very long documents.
    > I'm seeing slow performance with the Javascript table of contents tree
    > when there are a large number of TOC entries. This causes a serious
    > problem because Internet Explorer opens a dialog box asking whether
    > I'd like to "stop running this script."
    >
    > Internet Explorer 8 displays the dialog box when I include about 690
    > headings in my test document. The performance in Firefox, Chrome, and
    > Safari aren't that bad. The Internet Explorer dialog is really
    > unacceptable because it interrupts each page load.
    >
    > I'm looking into the underlying JavaScript. The developer tools in IE8
    > tell me that a function named "L" is taking the most time. I think
    > that L is a part of the jquery libray. I'm not familiar with tuning
    > JavaScript though.
    >

    We use minimal-size compacted version of the treeview and JQuery-UI,
    so those names won't make any sense! :)

    > Has anyone else encountered this problem? Do you know a way to speed
    > up the TOC loading?

    WebHelp uses JQuery framework for JavaScript. The Tree generation is
    done by TreeView plugin for JQuery [1]. Note that it's not
    custom-made.
    There's an option to remove JavaScript-based dynamic generation of
    tree to pre-rendered tree. Have a look at the demos. [2] has a good
    documentation. This'll probably reduce the JavaScript execution since
    the tree is prerendered.

    Some new updates to the plugin since the release of the plugin. But I
    don't think it really changes anything. We've tested WebHelp with the
    book "DocBook: The Definitive Guide" which is comparatively very large
    [3], and we didn't see significant degradation of performance. I'm
    not in a position to test it again in IE since I'm on Ubuntu.

    [1] http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
    [2] http://www.dynamicdrive.com/dynamicindex1/treeview/index.htm
    [3] http://www.thingbag.net/docbook/gsoc2010/defguideout/content/pr02s01.html

    Regards,
    --Kasun

    >
    > Thanks for your help.
    >
    > Peter Desjardins
    >
    > ---------------------------------------------------------------------
    > To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
    > For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
    >
    >



    --
    ~~~*******'''''''''''''*******~~~
    Kasun Gajasinghe,
    University of Moratuwa,
    Sri Lanka.
    Blog: http://kasunbg.blogspot.com
    Twitter: http://twitter.com/kasunbg