Twitter: raymondcamden

Address: Lafayette, LA, USA

Spry 1.4 Released!

12-14-2006 9,710 views 12 Comments

The site still says 1.3, but you can now download Spry 1.4. I'll have some examples later on.

Some folks are getting the wrong zip. If you do, just give it an hour.

Straight from the changelist here are the updates:

Changes for Spry PreRelease 1.4 - 2006/12/14

  • Data

    • Added function Spry.Utils.serializeObject() for serializing a JS Object into JSON format.
    • Added Spry.XML.nodeToObject() and Spry.XML.documentToObject() utility methods which allow developers to access XML data as JS properties on an object in a manner which is similar to E4X.
    • Added Spry.Utils.updateContent() for dynamically loading an HTML fragment into an element.
    • Added Spry.Utils.setInnerHTML() for setting the innerHTML of an element and executing any scripts within the content string. This method is now used by Spry regions when regenerating their content.
    • Added support for mapping a region state name to another state name. This can be useful for overriding the built-in states, like "ready", "loading", and "error", so that they use markup from a custom state when they fire.
    • Added support for more attributes:
      • spry:even - Conditionally adds the user specified CSS class name to an element based on the current row number used at the time that element was re-generated.
      • spry:odd - Conditionally adds the user specified CSS class name to an element based on the current row number used at the time that element was re-generated.
      • spry:setrow - Attaches a non-destructive onclick handler that sets the current row by row ID.
      • spry:setrownumber - Attaches a non-destructive onclick handler that sets the current row by row number.
      • spry:sort - Attaches a non-destructive onclick handler that sorts a specific data set based on columns specified by the user.
      • spry:readystate - Maps the "ready" state name to the name specified in its value.
      • spry:errorstate - Maps the "error" state name to the name specified in its value.
      • spry:loadingstate - Maps the "loading" state name to the name specified in its value.
    • Added code to report and error when nested regions and detail regions are detected.
    • Added new methods to the DataSet API:
      • getRowCount()
      • getRowByID()
      • getRowByRowNumber()
      • findRowsWithColumnValues()
  • Effects
    • Minor updates of documentation (effects_api and effects_coding, especially of the allowed elements to which the effects can be applied to).
    • Fixed bugs:
      • GrowShrink effect: if border is set, width&height style doesn't get reset to the original value after you toggled the target element
      • GrowShrink effect: text size inside the target element is alternated after the effect has been finished
      • Slide and Blind effect: Scrollbar disappears if overflow:scroll is set and you toggle the element
      • GrowShrink effect: nested image elements doesn't grow if you grow the target element
      • Slide effect: Text inside sliding element doesn't appear once you toggle the effect (IE 7 only)
      • Shake effect: doesn't work perperly in Opera 9.0
      • AppearFade effect: not working for content of a <div> inside a <td> (IE only)
    • new feature:
      • GrowShrink effect: added options 'referHeight' and 'growCenter'
    • IE 7 related fixes also take effect on Windows Vista (not only on XP)
    • new feature:

      • Slide effect: added option 'horizontal' to allow horizontal sliding
    • Slightly updated documentation to reflect new slide option
    • Simplified cluster construction: cluster now is an effect, too, which accepts setup and finish callbacks as option arguments of its constructor
    • Base effects (like Move, Size, etc.) can be called without from argument. Instead of passing element, fromPos, toPos, options as arguments, the effects can be called with element, toPos, options. The fromPos is calculated on the fly based on the current position.
    • AppearFade, Blind, GrowShrink, Slide and Squish effects now can be triggered for initially invisible elements ('display:none' or 'visibility:hidden')
  • Widgets
    • Added Menu Bar widget
    • Added Tabbed Panels widget
    • Added Collapsible Panel widget
    • Added Form Validation Widgets
      • Check Box
      • Text Area
      • Text Field
      • Select
    • Accordion:
      • Added support for variable height panels.
      • Added some new constructor options:
        • useFixedHeightPanels - This value is true by default. If false allows for variable height panels.
        • fixedPanelHeight - Number of pixels to use as the height of each panel when animating. By default this is the same as the first open panel.
        • duration - Number of milliseconds it takes to open/close a panel. Default is 500 msecs.
      • Fixed bug that prevented panels from animating properly when the accordion started out with a display:none style.
      • Removed addNewPanel(), getNewPanelSnippet(), getNewAccordionSnippet(), and getNewAccordionConstructorSnippet() methods. They don't work cross-browser, and should've never seen the light of day.
  • Docs
    • Added overview for Tabbed Panels widget.
    • Added overview for Collapsible Panel widget.
    • Added overview docs for each Form widget.

  • Demos
    • Gallery
      • Switch from using an interval timer to manually firing off the slide show timer after each image loads. This will allow images loading over slow connections to completely load.
    • Products

      • index.html to use spry:sort and spry:setrow.
      • Use a spry:choose attribute to show/preserve the currently selected product on initial load and after a sort.
    • RSS Reader
      • Modified index.{html,cfm,php} to use spry:setrow.

    • Added Form Validation demo.
  • Samples
    • Added sample for Tabbed Panels widget.
    • Added sample for Collapsible Panel widget.
    • Added samples for 4 Form widgets.
    • Moved data set and region examples to the samples/data_region folder.
    • Changed Effects sample files to use standard samples.css file.
    • Added a samples/utils folder with samples of Spry utility functions.
    • Released a query-to-XML sample page that shows how to convert dynamic data into XML.
    • Added to EvenOddRowSample.html to include spry:even and spry:odd.
    • Added SprySetRowSample.html.
    • Modified the AccordionSample:
      • Added sample for changing the duration of animations.
      • Modified variable height accordion sample to use animation.
      • Added a style for spans used as content panels so that they animate properly.
    • Added SetCurrentRowByValueSample.html to show how to select a row based on some column values.
    • Added StateMappingSample.html to show how to map the built-in region states to your own custom states.


  • Commented on 12-14-2006 at 7:58 PM
    When I download the zip, the file name is and the newest file is dated 8-11-06. I'm using the link on this page: and the pages says Spry Prerelease 1.4.

    I think there may be a problem with the link. I'm assuming that you downloaded it just fine since you blogged the change log.

    The change log in my download is for 1.3 2006/8/11.
  • Commented on 12-14-2006 at 8:29 PM
    Check at 9 PST.
  • Commented on 12-14-2006 at 8:30 PM
    Same here..., Ray... what's your login. Apparently you rate a newer version than the rest of us! LOL
  • Edward T #
    Commented on 12-14-2006 at 8:42 PM
    Drat, I'll be asleep by then....I hope!
  • DK #
    Commented on 12-14-2006 at 10:13 PM
    from the spry forums

    = = =
    12/14/2006 06:13:08 PM

    Almost will be pushed around 9pm Pacific..about 3 hours from now. I know it's late but you all have been so patient so far....
    = = =
  • Commented on 12-15-2006 at 6:20 AM
    Dang, I am still waiting for the zip to be changed. Still getting 1.3
  • Commented on 12-15-2006 at 6:28 AM
    Yeah, looks like something may have gone wrong.
  • Commented on 12-15-2006 at 6:36 AM
    Can someone mirror this if they have it?
  • Commented on 07-15-2008 at 8:45 AM
    new version 1.6.1 is now available from adobe
  • Commented on 07-15-2008 at 8:47 AM
    Yep, this is an old blog entry.
  • Commented on 01-24-2009 at 2:54 AM
    I tried to find additional widgets(apart from the ones already present in the CS4 package) for Spry on the Internet.......but couldnot find much........

    Can you please upload them if u have any??
  • Commented on 01-24-2009 at 8:46 AM
    I'd simply visit the Spry home page:

Post Reply

Please refrain from posting large blocks of code as a comment. Use Pastebin or Gists instead. Text wrapped in asterisks (*) will be bold and text wrapped in underscores (_) will be italicized.

Leave this field empty