(function($) {
	$.fn.WLink = function(o) {
		var holder;
		var __h;
		var btn;
		//获取滚动内容内各元素相关信息
		o = $.extend({
			dataURL:	$(this).attr('data') || '',				//动态加载菜单的数据
			title:		$(this).attr('title') || '友情链接',		//友情链接的默认内容
			id:			$(this).attr("id") || Math.random(),	//友情链接的ID
			height:		$(this).height() || 17,	//友情链接的高度
			direction:	$(this).attr('direction') || 'up' // 滚动方向
		}, o || {});

		if(o.dataURL != '')	
			load();
		else
			init();
		
		function load(){
			//记载XML数据
			jQuery.get(o.dataURL,{},function(data){
				links = [];
				var list = data.getElementsByTagName("group");
				for (var i=0; i<list.length; i++) {
					var xml = list[i];
					var obj = {};
					obj.tag = xml.getElementsByTagName("tag")[0].firstChild.data;
					obj.color = xml.getElementsByTagName("color")[0].firstChild.data;
					obj.color = obj.color.replace("0x", "#");
					obj.data = [];
					var tmp = xml.getElementsByTagName("link");
					for (var j =0; j<tmp.length; j++) {
					
						obj.data.push(tmp[j].getElementsByTagName("inner")[0].firstChild.data);
						obj.data.push(tmp[j].getElementsByTagName("url")[0].firstChild.data);
					}
					links.push(obj);
				}
				init_option();
			},'xml');
			
		}
		function init_option(){
			holder = $("#"+o.id);
			
			var tmp = "<div id='"+o.id+"_s'><div></div><ul>";
			for (var i=0,len=links.length; i<len; i++) {
				var ol = links[i];
				tmp += "<li style='color:"+ ol.color +"'>"+ol.tag+"</li>";
				for (var j=0,jlen=ol.data.length/2; j<jlen; j++) {
					tmp += '<li><a href="'+ol.data[j*2+1]+'" target="_blank">'+ol.data[j*2]+'</a></li>';
				}
			}
			
			tmp += '</ul></div><div class="normal">'+o.title+'</div>';
			$(holder).html(tmp);
			init();
		}
		
		function init(){
			holder = $("#"+o.id);
			var d = document.getElementById(o.id+'_s');
			var bg = d.getElementsByTagName("div")[0];
			var ul = d.getElementsByTagName("ul")[0];
			__h = ul.offsetHeight + o.height+2;
			bg.style.height = __h + "px";
			btn = holder.find("div").eq(2);
			$(btn).mouseover(function(e){
				if(o.direction == 'up')
					$(d).animate({top:-__h + o.height,height:__h},{queue:true,duration:__h/o.height*30});
				else
					$(d).animate({top:o.height,height:__h-o.height},{queue:true,duration:__h/o.height*30});
			})
			$(holder).hover(function(){},function(){
				//如果有运动队列
				$(d).stop();
				$(d).css({top:0,height:o.height});
			});
		}
		
		
		
	};
})(jQuery);

$(document).ready(function(){
	$(".WLink").each(function() {
		$(this).WLink();
	});
});
