var ie = document.all;
var altTaste = false;
var linksFertig = false;
var akLinks = new Array();

// Link mit accesskey anzeigen
function tasteGedrueckt()
{
	//	erst was machen, wenn alle Links geparst wurden
	if ( window.event && linksFertig )
	{
		//	welches war die aktuelle Taste denn?
		aktuelleTaste = parseInt ( window.event.keyCode );
		//	muss man sich zwischen speichern, sonst ist der Event weg (18 = ALT-Taste)
		if ( aktuelleTaste == 18 ) {
			altTaste = true;
		}
		else //	war eine andere Taste als ALT
		{
			//	mal gucken, ob diese zu den Accesskeys gehoert
			for ( i = 0; i < akLinks.length; i++ )
			{
				//	und direkt vorher muss ja die ALT-Taste gedrueckt gewesen sein
				if ( akLinks[i][0] == aktuelleTaste && altTaste )
				{
					//	wenn beides zutrifft nehmen wir den Link und fuehren ihn aus
					document.location.href = akLinks[i][1];
					//	gibt ja nur einen Accesskey, also koennen wir mit der Schleife aufhoeren
					break;
				}
			}
			//	wenn es nicht ALT war aber auch keine Taste mit unseres Keys, dann die ALT-Taste wieder zurueck setzen
			altTaste = false;
		}
	}
}

// Diese Variante funktioniert so nur fuer Accesskeys mit Zahlen
function alleAccesskeyLinks() {
	if ( document.getElementsByTagName )
	{
		// Alle Links holen
		links = document.getElementsByTagName ( "a" );
		// Zaehler initialisieren
		zaehler = 0;
		// wenn es Links gibt, und der Browser das neue DOM kann
		if ( links ) {
		// 	alle Links durchgehen
			for ( i = 0; i < links.length; i++ ) {
				if ( links[i].getAttribute )
				{
					// Accesskey-Attribut holen
					accesskey = links[i].getAttribute ( "accesskey" );
					// und wenn wir schon dabei sind, auch gleich den Link dazu
					accessLink = links[i].getAttribute ( "href" );
					// wenn der Accesskey vorhanden ist
					if ( accesskey ) {
						// machen wir in unserem akLinks (accesskeyLinks) ein zweidimensionales Array
						akLinks[zaehler] = new Array ( 2 );
						// in den ersten den Key reinpacken
						akLinks[zaehler][0] = accesskey * 1 + 48;
						// in den zweiten den Link reinpacken
						akLinks[zaehler][1] = accessLink;
						// Zähler eins weiter, damit im akLinks-Array ein weiter gezaehlt wird
						zaehler++;
					}
				}
			}
			// Falls Taste zu früh gedrückt wird
			linksFertig = true;
		}
	}
}

//	wenn auf dem Dokument eine Taste gedrueckt wird (das .document ist wichtig, ohne das geht es nicht)
window.document.onkeydown = tasteGedrueckt;
var counter = 0;
tempAccess = window.onload;
window.onload = function() {
if ( counter == 0 ) {
	if ( typeof tempAccess == "function" ) tempAccess();
		alleAccesskeyLinks();
		counter++;
	}
}