(function($)
{	
    var el={};
    var _float = {
        
                init : function(obj){
                    
                    el=obj[0];
                    
                	var ymax=0;//bepaalt onderste drempel
                	var topmax=800;//bepaalt centerpunt
                	var startX = 100, startY = 500;//beginpositie van floating div
                	var shiftX = -100;
                	var offsetX;
                	var wacht = 20;//animatiesnelheid
                	var d = document;
	var ns = (navigator.appName.indexOf("Netscape") != -1);
	var px = document.layers ? "" : "px";	
                	
                	
                	function ml()
                	{
                		
                		el.sP=function(x,y,mx,ht,st){
                			var max = Math.max(0,(ht-mx-ymax));
                			el.style.right=offsetX+shiftX+px;
                			y<max ? el.style.top=y+px : el.style.top=max+px ;
                			//this.innerHTML='x =' + this.style.left + '\n y= '+this.style.top+'\n top='+ mx + ' hoogte= ' + ht +' max=' + max + ' scrolltop = ' + st;//testing
                		};
                		el.x = startX; el.y = startY;
                		return el;
                	}
                	window.verschuif=function()
                	{
                		var pY = ns ? pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
                		offsetX = ns ? pageXOffset : document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft;
                		
                		ftlObj.mx=d.getElementById?d.getElementById('top').offsetTop:d.all?d.all['top']:d.layers['top'];//onderkant van het menu
                		ftlObj.ht=d.getElementById?d.getElementById('content').offsetHeight:d.all?d.all['content'] : d.layers['content'];//beschikbare ruimte tussen bovenkant menu en footer
                		ftlObj.st=pY;//gescrollde afstand
                		
                		if(ftlObj.mx<=topmax)//beginpositie van floating div is boven of op de gewenste centerpositie
                		{
                		var dY = (pY > startY) ? pY : startY;//dy is de streefwaarde, nadert tot scrolltop[pY]
                		ftlObj.y += (dY - ftlObj.y)/8;//ease-effect
                		}
                		else//positie van de floating div is onder de gewenste centerpositie
                		{
                		var dY = (ftlObj.mx > topmax) ? pY-(ftlObj.mx-topmax) : startY;
                		if((ftlObj.mx-pY)>topmax){dY=0;}//div blijft onder menu hangen tot gewenste centerpositie is bereikt
                		ftlObj.y += (dY - ftlObj.y)/8;
                		}
                		ftlObj.sP(ftlObj.x, ftlObj.y,ftlObj.mx,ftlObj.ht,ftlObj.st);
                		setTimeout("verschuif()", wacht);
                	}
                	ftlObj = ml();//id vanfloating div
                	verschuif();
                }
    };
	
	
	//============================
	
	$.fn.doFloat = function(divid) {
	    var obj = this.eq(0);
	    //alert(obj[0].id);
		_float.init(obj);
	};
	
	
})(jQuery);	

