Sometimes, the list of entries on a single page gets very long. For quick navigation, you may either add a table of contents or collapse all content. In order to do so, add the following line to your layout.html template:
{% set script_files = script_files + [pathto("_static/collapse.js", 1)] %}
Now the referenced JavaScript file is missing. You have to add it to your _static folder; sphinx will automatically copy the file to the appropriate destination. The following code will expand a section when you click on the title or in case a anchor is defined in the URL as this is the way sphinx creates permalinks.
function collapse_dd(){ if ($(this).hasClass('collapsed')) { $(this).removeClass('collapsed') $(this).children('dd').show('fast') } else { $(this).addClass('collapsed') $(this).children('dd').hide('fast') } return false; } $(document).ready(function() { $('dl.class > dd').hide() $('dl.class').addClass('collapsed').click(collapse_dd) $('dl.method > dd').hide() $('dl.method').addClass('collapsed').click(collapse_dd) $('div.section > dl.function > dd').hide() $('div.section > dl.function').addClass('collapsed').click(collapse_dd) $('a').click(function(e) { e.stopPropagation(); }) if (window.location.hash.length != 0) { base = window.location.hash.replace(/\./g, '\\.'); base = $(base); base.removeClass('collapsed'); base.parents('dd').show(); base.parents('dl').removeClass('collapsed'); base.siblings('dd').show(); } });