ÿþ/ * 
   *   M e t a d a t a   -   j Q u e r y   p l u g i n   f o r   p a r s i n g   m e t a d a t a   f r o m   e l e m e n t s 
   * 
   *   C o p y r i g h t   ( c )   2 0 0 6   J o h n   R e s i g ,   Y e h u d a   K a t z ,   J ï ¿ ½ Ã ¶ r n   Z a e f f e r e r ,   P a u l   M c L a n a h a n 
   * 
   *   D u a l   l i c e n s e d   u n d e r   t h e   M I T   a n d   G P L   l i c e n s e s : 
   *       h t t p : / / w w w . o p e n s o u r c e . o r g / l i c e n s e s / m i t - l i c e n s e . p h p 
   *       h t t p : / / w w w . g n u . o r g / l i c e n s e s / g p l . h t m l 
   * 
   *   R e v i s i o n :   $ I d :   j q u e r y . m e t a d a t a . j s   4 1 8 7   2 0 0 7 - 1 2 - 1 6   1 7 : 1 5 : 2 7 Z   j o e r n . z a e f f e r e r   $ 
   * 
   * / 
 
 / * * 
   *   S e t s   t h e   t y p e   o f   m e t a d a t a   t o   u s e .   M e t a d a t a   i s   e n c o d e d   i n   J S O N ,   a n d   e a c h   p r o p e r t y 
   *   i n   t h e   J S O N   w i l l   b e c o m e   a   p r o p e r t y   o f   t h e   e l e m e n t   i t s e l f . 
   * 
   *   T h e r e   a r e   t h r e e   s u p p o r t e d   t y p e s   o f   m e t a d a t a   s t o r a g e : 
   * 
   *       a t t r :     I n s i d e   a n   a t t r i b u t e .   T h e   n a m e   p a r a m e t e r   i n d i c a t e s   * w h i c h *   a t t r i b u t e . 
   *                     
   *       c l a s s :   I n s i d e   t h e   c l a s s   a t t r i b u t e ,   w r a p p e d   i n   c u r l y   b r a c e s :   {   } 
   *       
   *       e l e m :     I n s i d e   a   c h i l d   e l e m e n t   ( e . g .   a   s c r i p t   t a g ) .   T h e 
   *                     n a m e   p a r a m e t e r   i n d i c a t e s   * w h i c h *   e l e m e n t . 
   *                     
   *   T h e   m e t a d a t a   f o r   a n   e l e m e n t   i s   l o a d e d   t h e   f i r s t   t i m e   t h e   e l e m e n t   i s   a c c e s s e d   v i a   j Q u e r y . 
   * 
   *   A s   a   r e s u l t ,   y o u   c a n   d e f i n e   t h e   m e t a d a t a   t y p e ,   u s e   $ ( e x p r )   t o   l o a d   t h e   m e t a d a t a   i n t o   t h e   e l e m e n t s 
   *   m a t c h e d   b y   e x p r ,   t h e n   r e d e f i n e   t h e   m e t a d a t a   t y p e   a n d   r u n   a n o t h e r   $ ( e x p r )   f o r   o t h e r   e l e m e n t s . 
   *   
   *   @ n a m e   $ . m e t a d a t a . s e t T y p e 
   * 
   *   @ e x a m p l e   < p   i d = " o n e "   c l a s s = " s o m e _ c l a s s   { i t e m _ i d :   1 ,   i t e m _ l a b e l :   ' L a b e l ' } " > T h i s   i s   a   p < / p > 
   *   @ b e f o r e   $ . m e t a d a t a . s e t T y p e ( " c l a s s " ) 
   *   @ a f t e r   $ ( " # o n e " ) . m e t a d a t a ( ) . i t e m _ i d   = =   1 ;   $ ( " # o n e " ) . m e t a d a t a ( ) . i t e m _ l a b e l   = =   " L a b e l " 
   *   @ d e s c   R e a d s   m e t a d a t a   f r o m   t h e   c l a s s   a t t r i b u t e 
   *   
   *   @ e x a m p l e   < p   i d = " o n e "   c l a s s = " s o m e _ c l a s s "   d a t a = " { i t e m _ i d :   1 ,   i t e m _ l a b e l :   ' L a b e l ' } " > T h i s   i s   a   p < / p > 
   *   @ b e f o r e   $ . m e t a d a t a . s e t T y p e ( " a t t r " ,   " d a t a " ) 
   *   @ a f t e r   $ ( " # o n e " ) . m e t a d a t a ( ) . i t e m _ i d   = =   1 ;   $ ( " # o n e " ) . m e t a d a t a ( ) . i t e m _ l a b e l   = =   " L a b e l " 
   *   @ d e s c   R e a d s   m e t a d a t a   f r o m   a   " d a t a "   a t t r i b u t e 
   *   
   *   @ e x a m p l e   < p   i d = " o n e "   c l a s s = " s o m e _ c l a s s " > < s c r i p t > { i t e m _ i d :   1 ,   i t e m _ l a b e l :   ' L a b e l ' } < / s c r i p t > T h i s   i s   a   p < / p > 
   *   @ b e f o r e   $ . m e t a d a t a . s e t T y p e ( " e l e m " ,   " s c r i p t " ) 
   *   @ a f t e r   $ ( " # o n e " ) . m e t a d a t a ( ) . i t e m _ i d   = =   1 ;   $ ( " # o n e " ) . m e t a d a t a ( ) . i t e m _ l a b e l   = =   " L a b e l " 
   *   @ d e s c   R e a d s   m e t a d a t a   f r o m   a   n e s t e d   s c r i p t   e l e m e n t 
   *   
   *   @ p a r a m   S t r i n g   t y p e   T h e   e n c o d i n g   t y p e 
   *   @ p a r a m   S t r i n g   n a m e   T h e   n a m e   o f   t h e   a t t r i b u t e   t o   b e   u s e d   t o   g e t   m e t a d a t a   ( o p t i o n a l ) 
   *   @ c a t   P l u g i n s / M e t a d a t a 
   *   @ d e s c r   S e t s   t h e   t y p e   o f   e n c o d i n g   t o   b e   u s e d   w h e n   l o a d i n g   m e t a d a t a   f o r   t h e   f i r s t   t i m e 
   *   @ t y p e   u n d e f i n e d 
   *   @ s e e   m e t a d a t a ( ) 
   * / 
 
 ( f u n c t i o n ( $ )   { 
 
 $ . e x t e n d ( { 
 	 m e t a d a t a   :   { 
 	 	 d e f a u l t s   :   { 
 	 	 	 t y p e :   ' c l a s s ' , 
 	 	 	 n a m e :   ' m e t a d a t a ' , 
 	 	 	 c r e :   / ( { . * } ) / , 
 	 	 	 s i n g l e :   ' m e t a d a t a ' 
 	 	 } , 
 	 	 s e t T y p e :   f u n c t i o n (   t y p e ,   n a m e   ) { 
 	 	 	 t h i s . d e f a u l t s . t y p e   =   t y p e ; 
 	 	 	 t h i s . d e f a u l t s . n a m e   =   n a m e ; 
 	 	 } , 
 	 	 g e t :   f u n c t i o n (   e l e m ,   o p t s   ) { 
 	 	 	 v a r   s e t t i n g s   =   $ . e x t e n d ( { } , t h i s . d e f a u l t s , o p t s ) ; 
 	 	 	 / /   c h e c k   f o r   e m p t y   s t r i n g   i n   s i n g l e   p r o p e r t y 
 	 	 	 i f   (   ! s e t t i n g s . s i n g l e . l e n g t h   )   s e t t i n g s . s i n g l e   =   ' m e t a d a t a ' ; 
 	 	 	 
 	 	 	 v a r   d a t a   =   $ . d a t a ( e l e m ,   s e t t i n g s . s i n g l e ) ; 
 	 	 	 / /   r e t u r n e d   c a c h e d   d a t a   i f   i t   a l r e a d y   e x i s t s 
 	 	 	 i f   (   d a t a   )   r e t u r n   d a t a ; 
 	 	 	 
 	 	 	 d a t a   =   " { } " ; 
 	 	 	 
 	 	 	 i f   (   s e t t i n g s . t y p e   = =   " c l a s s "   )   { 
 	 	 	 	 v a r   m   =   s e t t i n g s . c r e . e x e c (   e l e m . c l a s s N a m e   ) ; 
 	 	 	 	 i f   (   m   ) 
 	 	 	 	 	 d a t a   =   m [ 1 ] ; 
 	 	 	 }   e l s e   i f   (   s e t t i n g s . t y p e   = =   " e l e m "   )   { 
 	 	 	 	 i f (   ! e l e m . g e t E l e m e n t s B y T a g N a m e   ) 
 	 	 	 	 	 r e t u r n   u n d e f i n e d ; 
 	 	 	 	 v a r   e   =   e l e m . g e t E l e m e n t s B y T a g N a m e ( s e t t i n g s . n a m e ) ; 
 	 	 	 	 i f   (   e . l e n g t h   ) 
 	 	 	 	 	 d a t a   =   $ . t r i m ( e [ 0 ] . i n n e r H T M L ) ; 
 	 	 	 }   e l s e   i f   (   e l e m . g e t A t t r i b u t e   ! =   u n d e f i n e d   )   { 
 	 	 	 	 v a r   a t t r   =   e l e m . g e t A t t r i b u t e (   s e t t i n g s . n a m e   ) ; 
 	 	 	 	 i f   (   a t t r   ) 
 	 	 	 	 	 d a t a   =   a t t r ; 
 	 	 	 } 
 	 	 	 
 	 	 	 i f   (   d a t a . i n d e x O f (   ' { '   )   < 0   ) 
 	 	 	 d a t a   =   " { "   +   d a t a   +   " } " ; 
 	 	 	 
 	 	 	 d a t a   =   e v a l ( " ( "   +   d a t a   +   " ) " ) ; 
 	 	 	 
 	 	 	 $ . d a t a (   e l e m ,   s e t t i n g s . s i n g l e ,   d a t a   ) ; 
 	 	 	 r e t u r n   d a t a ; 
 	 	 } 
 	 } 
 } ) ; 
 
 / * * 
   *   R e t u r n s   t h e   m e t a d a t a   o b j e c t   f o r   t h e   f i r s t   m e m b e r   o f   t h e   j Q u e r y   o b j e c t . 
   * 
   *   @ n a m e   m e t a d a t a 
   *   @ d e s c r   R e t u r n s   e l e m e n t ' s   m e t a d a t a   o b j e c t 
   *   @ p a r a m   O b j e c t   o p t s   A n   o b j e c t   c o n t i a n i n g   s e t t i n g s   t o   o v e r r i d e   t h e   d e f a u l t s 
   *   @ t y p e   j Q u e r y 
   *   @ c a t   P l u g i n s / M e t a d a t a 
   * / 
 $ . f n . m e t a d a t a   =   f u n c t i o n (   o p t s   ) { 
 	 r e t u r n   $ . m e t a d a t a . g e t (   t h i s [ 0 ] ,   o p t s   ) ; 
 } ; 
 
 } ) ( j Q u e r y ) ; 
