diff options
author | Kate Arzamastseva <pshns@ukr.net> | 2011-07-10 14:42:10 +0300 |
---|---|---|
committer | Kate Arzamastseva <pshns@ukr.net> | 2011-07-10 14:42:10 +0300 |
commit | abc5e9c041a9f062f4506e4d643d1838a562b460 (patch) | |
tree | 62e3331744130aac11fe2350e666af42e38995f2 /lib/scripts/behaviour.js | |
parent | de11c42f80968ac41dc4164829845c1e5dae25c2 (diff) | |
parent | 0cacf91f96aa51a4c66082fe6c9b034fe61a1290 (diff) | |
download | rpg-abc5e9c041a9f062f4506e4d643d1838a562b460.tar.gz rpg-abc5e9c041a9f062f4506e4d643d1838a562b460.tar.bz2 |
merging
Diffstat (limited to 'lib/scripts/behaviour.js')
-rw-r--r-- | lib/scripts/behaviour.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/lib/scripts/behaviour.js b/lib/scripts/behaviour.js index 7cc65579e..dd7676432 100644 --- a/lib/scripts/behaviour.js +++ b/lib/scripts/behaviour.js @@ -17,6 +17,7 @@ var dw_behaviour = { dw_behaviour.removeHighlightOnClick(); dw_behaviour.quickSelect(); dw_behaviour.checkWindowsShares(); + dw_behaviour.initTocToggle(); }, /** @@ -89,8 +90,56 @@ var dw_behaviour = { jQuery('a.windows').live('click', function(){ alert(LANG.nosmblinks); }); + }, + + /** + * Adds the toggle switch to the TOC + */ + initTocToggle: function() { + var $header = jQuery('#toc__header'); + if(!$header.length) return; + var $toc = jQuery('#toc__inside'); + + var $clicky = jQuery(document.createElement('span')) + .attr('id','toc__toggle') + .css('cursor','pointer') + .click(function(){ + $toc.slideToggle(); + setClicky(); + }); + $header.prepend($clicky); + + var setClicky = function(){ + if($toc.css('display') == 'none'){ + $clicky.html('<span>+</span>'); + $clicky[0].className = 'toc_open'; + }else{ + $clicky.html('<span>−</span>'); + $clicky[0].className = 'toc_close'; + } + }; + + setClicky(); } }; +jQuery.fn.dw_hide = function(fn) { + return this.slideUp('fast', fn); +}; + +jQuery.fn.dw_show = function() { + return this.slideDown('fast'); +}; + +jQuery.fn.dw_toggle = function(bool) { + return this.each(function() { + var $this = jQuery(this); + if (typeof bool === 'undefined') { + bool = $this.is(':hidden'); + } + $this[bool ? "dw_show" : "dw_hide" ](); + }); +}; + jQuery(dw_behaviour.init); |