Search code examples
jqueryjquery-pluginsscrolljquery-effects

How to use jQuery's "slideDown" and "slideUp" effect in the jQuery Expander Plug-in?


I'm using the jQuery Expander plug-in. I would like it to use an effect like jQuery's slideUp and slideDown as opposed to the default, fadeIn.

Can someone tell me how to do this?

Here are the default options:

$.fn.expander.defaults = {
  slicePoint:       100,      // the number of characters at which the contents will be sliced into two parts. 
                              // Note: any tag names in the HTML that appear inside the sliced element before 
                              // the slicePoint will be counted along with the text characters.
  widow:            4,        // a threshold of sorts for whether to initially hide/collapse part of the element's contents. 
                              // If after slicing the contents in two there are fewer words in the second part than 
                              // the value set by widow, we won't bother hiding/collapsing anything.
  expandText:       'read more...',   // text displayed in a link instead of the hidden part of the element. 
                              // clicking this will expand/show the hidden/collapsed text
  expandPrefix:     '… ', // text to come before the expand link                              
  collapseTimer:    0,        // number of milliseconds after text has been expanded at which to collapse the text again
  expandEffect:     'fadeIn',
  expandSpeed:      '',       // speed in milliseconds of the animation effect for expanding the text
  userCollapse:     true,     // allow the user to re-collapse the expanded text.
  userCollapseText: '[collapse expanded text]',  // text to use for the link to re-collapse the text
  userCollapsePrefix: ' ', // text to come before the re-collapse link
  beforeExpand: function($thisEl) {}, // function that is called immediately upon expanding, before the expand occurs
  afterExpand: function($thisEl) {}, // function that is called after the details have finished expanding
  onCollapse: function($thisEl, byUser) {} //function that is called when the details are collapsed (immediately after)

};

Solution

  • Just use $('#yourthing').expander() by Default it uses slideDown and slideUp.

    Check it in lined 52 and 54 at http://plugins.learningjquery.com/expander/jquery.expander.js — It's not using the defaults you mention.