Revision: 12103
                            
                                                            
                                    
                                        
Initial Code
                                    
                                    
                                                            
                                    
                                        
Initial URL
                                    
                                    
                                
                                                            
                                    
                                        
Initial Description
                                    
                                    
                                
                                                            
                                    
                                        
Initial Title
                                    
                                    
                                                            
                                    
                                        
Initial Tags
                                    
                                    
                                                            
                                    
                                        
Initial Language
                                    
                                    
                                                    
                        at March 2, 2009 16:01 by johnloy
                            
                            Initial Code
/*  
From the article http://www.learningjquery.com/2007/10/a-plugin-development-pattern
*/
//
// create closure
//
(function($) {
	//
	// plugin definition
	//
	$.fn.hilight = function(options) {
		debug(this);
		// build main options before element iteration
		var opts = $.extend({}, $.fn.hilight.defaults, options);
		// iterate and reformat each matched element
		return this.each(function() {
			$this = $(this);
			// build element specific options
			var o = $.meta ? $.extend({}, opts, $this.data()) : opts;
			// update element styles
			$this.css({
				backgroundColor: o.background,
				color: o.foreground
			});
			var markup = $this.html();
			// call our format function
			markup = $.fn.hilight.format(markup);
			$this.html(markup);
		});
	};
	//
	// private function for debugging
	//
	function debug($obj) {
		if (window.console && window.console.log)
		window.console.log('hilight selection count: ' + $obj.size());
	};
	//
	// define and expose our format function
	//
	$.fn.hilight.format = function(txt) {
		return '<strong>' + txt + '</strong>';
	};
	//
	// plugin defaults
	//
	$.fn.hilight.defaults = {
		foreground: 'red',
		background: 'yellow'
	};
//
// end of closure
//
})(jQuery);
                                Initial URL
Initial Description
Initial Title
Skeleton for a JQuery plugin
Initial Tags
javascript, textmate, jquery
Initial Language
Other