                
		var do_scroll=false;	//ist während des Scrollvorgangs auf true

		var sichtbare_hoehe=0;	//Der sichtbare Bereich der dem Iframe zur Verfügung steht
		var iframe_shoehe=0;	//Sichtbare Höhe des IFrames
		var iframe_hoehe=0;		//Tatsächliche Höhe des Iframes
		var scroll_offset=0;	//Position wie weit das IFrame gescrollt wurde
		var scroll_hoehe=0;		//wie weit kann gescrollt werden
		var scroller_hoehe=0;	//Höhe des Scrollbalken in Prozent
		var isNS,isNS6isNS7;				//Netscape?
		var iframe,iframe_body;
		var scroll_x,scroll_y		//koordinaten für auswertung scrollbar
		
		isNS= (navigator.appName=="Netscape") ? true : false
		isNS6=(navigator.userAgent.toLowerCase().indexOf('netscape6')!=-1)? true : false
		isNS7=(navigator.userAgent.toLowerCase().indexOf('netscape/7')!=-1)? true : false
		
		function scroll_up()	//Nach oben scrollen
	    {  	
			if(!do_scroll)
			{
				do_scroll=true;	scroll(-5);
			}
		}
	    
		function scroll_down()	//Nach unten scrollen
	    {   
			if(!do_scroll)
			{
				do_scroll=true; scroll(5);
			}
		}
	    
		function scroll_stop() //scrollen stoppen
	    {	do_scroll=false; }
		
		function scroll(richtung,timeout)	//scrollen
	    {
	    	
			if(timeout!=0 && !timeout )timeout=20;
			if(do_scroll)
	    	{
	    		//Variable scrolloffset setzen
				if(scroll_offset + richtung<0) 
					scroll_offset=0;
				else
				{	if(scroll_offset + richtung > scroll_hoehe)
						scroll_offset=scroll_hoehe;
					else
						scroll_offset=scroll_offset+richtung;
				}
				//jetzt scrollen
				window.mmc.scrollTo(0,scroll_offset);
	    		//position der scrollbar setzen
				set_scrollbarpos();
				if(timeout!=0)	window.setTimeout("scroll("+richtung+","+timeout+")",timeout);
	    	}
	    }
		
		function IE_newpage()
		{
			if(window.mmc.document && window.mmc.document.body.id!='IE_OldPage')
				new_iframe_page();
			else
				window.setTimeout(IE_newpage,100);
			
		}
	    
		function new_iframe_page()	//wird immer ausgeführt wenn eine neue Seite geladen wurde
		{
			iframe= document.getElementById('mmc');
			iframe_body=window.mmc.document.body;
			
			iframe_body.onmouseup=stop_scroll_via_bar;
			
			if(isNS) //Netscape
			{
				iframe.onload=new_iframe_page;
			}
			else	//Internet-Explorer
			{
				iframe_body.id='IE_OldPage';
				iframe_body.onunload=IE_newpage;
				iframe_body.onmousewheel = mouse_wheel;
			}
			scroll_offset=0;
			fkt_resize();
			
		}
		function set_scrollbar_color(bar,color)
		{
			document.getElementById(bar).style.backgroundColor=color;
		}
		function scroll_via_space(element)
		{
			if(element=='scrollbar_oben') var dir=-1;else var dir=1;
			set_scrollbar_color(element,'#777777');
			do_scroll=true;
			direction=Math.round(dir*sichtbare_hoehe*0.9);
			direction_delayed=Math.round(direction*0.5);
			do_scroll=true;
			scroll(direction,0);	//Aufrufen mit Timeout=0 damit kein weiterer Timeout gesetzt wird
			window.setTimeout('scroll('+direction_delayed+',100)',400);	//Verzögertes Weiterscrollen			
			document.onmouseup=stop_scroll_via_space;
			document.getElementById('scrollbar').stop_scroll_via_space;
			iframe_body.onmouseup=stop_scroll_via_space;
		}
		function stop_scroll_via_space()
		{
			set_scrollbar_color('scrollbar_oben','');
			set_scrollbar_color('scrollbar_unten','');
			document.onmouseup='';
			document.getElementById('scrollbar').onmouseup='';
			iframe_body.onmouseup='';
			do_scroll=false;
		}
		function scroll_init()	//Initialisierung im on_load
		{
			document.getElementById('scrollbar_oben').onmousedown=function(e) {scroll_via_space('scrollbar_oben');}
			document.getElementById('scrollbar_unten').onmousedown=function(e){scroll_via_space('scrollbar_unten');}
			if(!isNS) document.onmousewheel = mouse_wheel; //Mousewheel für IE6
			window.onresize=fkt_resize;
			new_iframe_page();			
			fkt_resize();
		}
		
		function mouse_wheel()	//ab IE6
		{
			do_scroll=true;
			if(event)	//Scrollen mit Maus auf Hauptseite
				var delta=event.wheelDelta;
			else	//Scrollen mit Maus im iframe
				var delta=window.mmc.event.wheelDelta;
			scroll(Math.round( delta/-3));
			do_scroll=false;
			return false;
		}
	    function fkt_resize()
		{
			var abs_hoehe;
			if (isNS)
		  	{
				if(isNS6)
					var rest=245;
				else
					var rest=220;
				abs_hoehe = window.innerHeight;
			}
		  	else
		  	{	
				var rest=223;
				abs_hoehe = document.body.offsetHeight;
			}
			
			//Variable Sichtbare Höhe neu setzen
			sichtbare_hoehe=abs_hoehe-rest;	
			if(sichtbare_hoehe<0)sichtbare_hoehe=0;	
			//Tabelle auf neue sichtbare höhe setzen
			set_height('variable_tab_l',sichtbare_hoehe+'px');
			set_height('variable_tab_m',sichtbare_hoehe+'px');
			set_height('variable_tab_r',sichtbare_hoehe+'px');
			/*if(isNS7)	//Bugs in NS7
			{	//set_height('scrolltab',(sichtbare_hoehe+10)+'px');
				//set_height('mmc',(sichtbare_hoehe+10)+'px');
				set_height('haupttab',abs_hoehe);
				//set_height('scrolltab_innen',(sichtbare_hoehe-26)+'px');
			}
			if(isNS6)	//Bug in Netscape 6 zeigt den iframe immer zu klein an
			{	
				set_height('scrolltab',(sichtbare_hoehe+26)+'px');
				set_height('mmc',(sichtbare_hoehe+26)+'px');	
			}*/
			//window.mmc.scrollTo(0,scroll_offset);
			//window.setTimeout('check_scrollbar()',20);		//verzögert aufrufen damit die Höhen des IFrames im NS korrekt
		}
		

		function check_scrollbar()	//passt die Scrollbar an
		{
			if (isNS)
		  	{
				iframe_shoehe=window.mmc.innerHeight;
				iframe_hoehe=window.mmc.document.body.offsetHeight;
			}
		  	else
		  	{	
				iframe_shoehe=window.mmc.document.body.offsetHeight;
				iframe_hoehe=window.mmc.document.body.scrollHeight;
			}
			
			//Scrollbare Höhe neu setzen
			scroll_hoehe=iframe_hoehe-iframe_shoehe;
			if(scroll_hoehe<0)
				scroll_hoehe=0;
			if(scroll_offset>scroll_hoehe)
				scroll_offset=scroll_hoehe;
				
			scroller_hoehe=Math.round(iframe_shoehe*100.0/iframe_hoehe);
			if(scroller_hoehe <2) scroller_hoehe=2;	//Niemals kleiner als 2 Prozent
			if(scroller_hoehe >100) scroller_hoehe=100;	//Niemals grösser als 100 Prozent
			set_height('scrollbar',scroller_hoehe+'%');
			set_scrollbarpos();
			document.getElementById('scrolltab').style.visibility= (scroller_hoehe<100)? 'visible':'hidden'
			//alert(document.getElementById('scrolltab').style.visibility);
		}

		function set_scrollbarpos()
		{
			var scrollpos=0;
			if(scroll_hoehe!=0)
				scrollpos=scroll_offset*1.0 /scroll_hoehe;
				
			var size_scrollbaroben=Math.round((100-scroller_hoehe)*scrollpos);
			var size_scrollbarunten=100-scroller_hoehe-size_scrollbaroben;
			

			set_height('scrollbar_oben',size_scrollbaroben+'%');	
			set_height('scrollbar_unten',size_scrollbarunten+'%');		
			if(isNS7&&false)
			{	var tmp_oben=Math.round(size_scrollbaroben*(sichtbare_hoehe-26)/100.0);
				var tmp_unten=Math.round(size_scrollbarunten*(sichtbare_hoehe-26)/100.0);
				set_height('scrollbar_unten',tmp_unten+'px');
				set_height('scrollbar_oben',tmp_oben+'px');
				set_height('scrollbar',(sichtbare_hoehe-tmp_oben-tmp_unten-26)+'px');
				//alert(tmp_unten+' '+tmp_oben);
			}
			
			//alert(document.getElementById('variable_tab_r').style.height);
			//alert('sc_offset:'+scroll_offset+' sichtb_hoehe:'+sichtbare_hoehe+' iframe_hoehe:'+iframe_hoehe+' iframe_shoehe:'+iframe_shoehe+' scroll_hoehe:'+scroll_hoehe+' size_oben:'+size_scrollbaroben+' scroller_hoehe:'+scroller_hoehe+' size_unten:'+size_scrollbarunten);
			window.status='sc_offset:'+scroll_offset+' sichtb_hoehe:'+sichtbare_hoehe+' iframe_hoehe:'+iframe_hoehe+' iframe_shoehe:'+iframe_shoehe+' scroll_hoehe:'+scroll_hoehe+' size_oben:'+size_scrollbaroben+' scroller_hoehe:'+scroller_hoehe+' size_unten:'+size_scrollbarunten;
			

		}
		
		function set_height(id,height)
		{
			var el=document.getElementById(id);
			if(!el)
				alert('Fehler, kann Element '+id+' nicht finden !!!');
			else
				el.style.height=height;
		}
		function scroll_via_bar(e)
		{
			x = (isNS) ? e.pageX : document.body.scrollLeft+event.clientX
     		y = (isNS) ? e.pageY : document.body.scrollTop+event.clientY
			if(scroll_x==-1) scroll_x=x;
			if(Math.abs(scroll_x-x)> 30)	//seitlich herausgescrollt => beenden
			{
				//stop_scroll_via_bar();
			}
			else
			{
				if(scroll_y!=-1)
				{
					var diff=Math.round((y-scroll_y)*(iframe_hoehe*1.0/(iframe_shoehe-26)));
					do_scroll=true;
					scroll(diff);
					do_scroll=false;
				}
				scroll_y=y;	//neue Position setzen
				//window.status= x+' ' +y;
			}
		}
		
		function stop_scroll_via_bar()
		{
			document.onmousemove='';
			document.onmouseup='';
			//Fehler beim ziehen der Scrollbar verhindern
			if(document.focus)document.focus();
			if(document.selection)document.selection.clear();	//IE
			if(window.getSelection) window.getSelection().removeAllRanges( ); //Mozilla-based
			
			scroll_x=-1;scroll_y=-1;	//Startwerte
		}
		function start_scroll_via_bar()
		{
			scroll_x=-1;scroll_y=-1; 	//Startwerte
			iframe_body.onmouseup=stop_scroll_via_bar;
			document.onmousemove=scroll_via_bar;
			document.onmouseup=stop_scroll_via_bar;
		}
		
		
	    