/**
 * 页面浮动窗口用js (需要jQuery的支持)
 * 		使用方法
 * 		jQuery.floatDiv("内容","指向链接地址");
 * 	或	$.floatDiv("内容","指向链接地址");
 * */

//jQuery自定义方法
var limgpath="/Portal/images/floatImg_left.jpg";
var rimgpath="/Portal/images/floatImg_right.jpg";
jQuery.floatDiv = function(name, url,limg,rimg) {
	sakuya.showFloat(name,url,limg,rimg);
};

//自定义属性
var sakuya = {
	//属性
	"pro": {
		//显示的内容
		"imgContent":"",
		//浮动窗左侧的图片
		"imgPath":limgpath,
		//浮动窗右侧内容显示处的 背景图片
		"imgPathRight":rimgpath,
		//点击浮动窗后 跳转的地址
		"imgUrl":"",
		//窗口宽度
		"imgWidth":"1000",
		//窗口高度
		"imgHeight":"60",
		//图片提示
		"imgAlt":""
	},
	//运行浮动窗的方法
	"showFloat":"运行浮动窗"
}

//浮动窗口属性
var floatInit = {
	"pro": {
		//起始x坐标
		"initX":20,
		//起始y坐标
		"initY":jQuery(window).width(),
		//每次移动的像素
		"step":1,
		//移动速度,越大越慢
		"speed":30,
		//窗口宽度
		"height":0,
		//浮动窗高度
		"heightOffset":0,
		//浮动窗宽度
		"widthOffset":0,
		//y轴移动方向 0:向下 1:向上
		"y":0,
		//x轴移动方向 0:向左 1:向右
		"x":0,
		//是否暂停
		"pause":true,
		//定时器
		"interval":"",
		//浮动窗id
		"div":"float_div",
		//浮动窗样式
		"divStyle":"position:absolute;z-index:9999999;width:"
				+sakuya.pro.imgWidth+";height:"+sakuya.pro.imgHeight+";",
		//浮动窗右侧样式
		"divStyleRight":"font-size:17px;font-weight:bold;float:left;color:#fff;height:"
				+sakuya.pro.imgHeight+"px;line-height:"
				+sakuya.pro.imgHeight+"px;vertical-align:middle;background:url("+sakuya.pro.imgPathRight+")"
	},
	"evt": {
		"hover":"鼠标悬浮事件"
	},
	"fun": {
		"init":"初始化浮动窗",
		"divMove":"浮动窗移动事件的坐标计算",
		"divMoveStart":"绑定移动事件",
		"move_stopChange":"移动或者停止事件"
	}
}

//初始化位置
floatInit.fun.init = function(){
	//设置浮动窗的初始高度
	floatInit.pro.divId.style.top=floatInit.pro.initY;
}

//窗口移动方法
floatInit.fun.divMove = function divMove(){
	//获取页面宽度
	var thisWidth = jQuery(window).width();
	//获取页面高度
	floatInit.pro.height = jQuery(window).height();
	//floatInit.pro.heightOffset = jQuery('#'+floatInit.pro.div)[0].offsetHeight;
	//floatInit.pro.widthOffset = jQuery('#'+floatInit.pro.div)[0].offsetWidth; 
	//设置浮动窗高度
	floatInit.pro.heightOffset = sakuya.pro.imgHeight;
	//设置浮动窗宽度
	floatInit.pro.widthOffset = sakuya.pro.imgWidth; 
	//设置浮动窗左边距 (移动具体实现)
	jQuery('#'+floatInit.pro.div).css('left',floatInit.pro.initX + document.documentElement.scrollLeft);
	//设置浮动窗上边距 (移动具体实现)
	jQuery('#'+floatInit.pro.div).css('top', floatInit.pro.initY + document.documentElement.scrollTop);
	//jQuery('#temp').html(jQuery('#'+floatInit.pro.div)[0].offsetHeight + "/"+jQuery('#'+floatInit.pro.div)[0].offsetWidth);
	//判断y轴移动方向
	if(floatInit.pro.y) {
		//上
		floatInit.pro.initY = floatInit.pro.initY + floatInit.pro.step;
	} else {
		//下
		floatInit.pro.initY = floatInit.pro.initY - floatInit.pro.step;
	}
	//y轴移动到最上时改变方向
	if(floatInit.pro.initY < 0) {
		floatInit.pro.y = 1;
		floatInit.pro.initY = 0;
	}
	//y轴移动到最下时改变方向
	if(floatInit.pro.initY >= (floatInit.pro.height - floatInit.pro.heightOffset)) {
		floatInit.pro.y = 0;
		floatInit.pro.initY = (floatInit.pro.height - floatInit.pro.heightOffset);
	}
	
	//判断x轴移动方向
	if(floatInit.pro.x) {
		//右
		floatInit.pro.initX = floatInit.pro.initX + floatInit.pro.step;
	} else {
		//左
		floatInit.pro.initX = floatInit.pro.initX - floatInit.pro.step;
	}
	//x轴移动到最左时改变方向
	if(floatInit.pro.initX < 0) {
		floatInit.pro.x = 1;
		floatInit.pro.initX = 0;
	}
	//x轴移动到最右时改变方向
	if(floatInit.pro.initX >= (thisWidth - floatInit.pro.widthOffset)) {
		floatInit.pro.x = 0;
		floatInit.pro.initX = (thisWidth - floatInit.pro.widthOffset);
	}
}

//开始移动窗口方法
floatInit.fun.divMoveStart = function(){
	//设置可见
	floatInit.pro.div.visibility = "visible";
	//加载定时器
	floatInit.pro.interval = setInterval('floatInit.fun.divMove()', floatInit.pro.speed);
}

//暂停和再移动的方法
floatInit.fun.move_stopChange = function(){
	//判断是否暂停
	if(floatInit.pro.pause) {
		//取消定时器(停止移动)
		clearInterval(floatInit.pro.interval);
		floatInit.pro.pause = false;
	} else {
		//重设定时器
		floatInit.pro.interval = setInterval('floatInit.fun.divMove()', floatInit.pro.speed);
		floatInit.pro.pause = true;
	}
}

//执行开始移动
floatInit.fun.divMoveStart();

//绑定初始数据
sakuya.showFloat = function(name,url,limg,rimg) {
	var width="";
	if($.trim(name)==""){
		width="width:250px;";
	}
	floatInit.pro.divStyleRight= width+"font-size:17px;font-weight:bold;float:left;color:#fff;height:"
				+sakuya.pro.imgHeight+"px;line-height:"
				+sakuya.pro.imgHeight+"px;vertical-align:middle;background:url("+rimg+")"
	//url地址绑定
	sakuya.pro.imgUrl=url;
	//内容绑定
	sakuya.pro.imgContent=name;
	var labadiv="<img style='float:left' src='"+sakuya.pro.imgPath+"' width='87px' height='60px' border='0' alt='"+sakuya.pro.imgAlt+"'>";
	if(rimg!="/Portal/images/floatImg_right.jpg"){
		labadiv="";
	}
	//生成浮动窗
	var tempStr = "<div id='"+floatInit.pro.div+"' class='floatdivclass' style='"+floatInit.pro.divStyle+"'>"
	 		+ "<a target='_blank' href='"+sakuya.pro.imgUrl+"'>"
			+ labadiv
			+ "<div style='"+floatInit.pro.divStyleRight+"'>"+sakuya.pro.imgContent+"</div>"
			+ "</a></div>";
	jQuery(document.body).append(tempStr);
	
	//获取内容窗的即时宽度 start (针对ie6, 其他游览器无影响) 
	var l = jQuery('#'+floatInit.pro.div+" div")[0].offsetWidth;
	sakuya.pro.imgWidth = l-1+88;
	jQuery('#'+floatInit.pro.div).css('width',sakuya.pro.imgWidth);
	//获取内容窗的即时宽度 end (针对ie6, 其他游览器无影响) 
	
	//绑定鼠标悬浮事件
	jQuery('#'+floatInit.pro.div).hover(function(){
		floatInit.fun.move_stopChange();
	},function(){
		floatInit.fun.move_stopChange();
	});
}

