/*  
===============================================================================
WResize is the jQuery plugin for fixing the IE window resize bug
...............................................................................
                                               Copyright 2007 / Andrea Ercolino
-------------------------------------------------------------------------------
LICENSE: http://www.opensource.org/licenses/mit-license.php
WEBSITE: http://noteslog.com/
===============================================================================
*/

( function( $ ) 
{
        $.fn.wresize = function( f ) 
        {
                version = '1.1';
                wresize = {fired: false, width: 0};

                function resizeOnce() 
                {
                        if ( $.browser.msie )
                        {
                                if ( ! wresize.fired )
                                {
                                        wresize.fired = true;
                                }
                                else 
                                {
                                        var version = parseInt( $.browser.version, 10 );
                                        wresize.fired = false;
                                        if ( version < 7 )
                                        {
                                                return false;
                                        }
                                        else if ( version == 7 )
                                        {
                                                //a vertical resize is fired once, an horizontal resize twice
                                                var width = $( window ).width();
                                                if ( width != wresize.width )
                                                {
                                                        wresize.width = width;
                                                        return false;
                                                }
                                        }
                                }
                        }

                        return true;
                }

                function handleWResize( e ) 
                {
                        if ( resizeOnce() )
                        {
                                return f.apply(this, [e]);
                        }
                }

                this.each( function() 
                {
                        if ( this == window )
                        {
                                $( this ).resize( handleWResize );
                        }
                        else
                        {
                                $( this ).resize( f );
                        }
                } );

                return this;
        };

} ) ( jQuery ); 
