Zurück   Flashforum > Alternative Technologien > JavaScript & jQuery

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-10-2004, 16:44   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2004
Beiträge: 10
Unhappy Tastenkombinationen mit JavaScipt

Hi alle zusammen!

Ich habe versucht auf meiner Seite so etwas wie Tastenkombinationen in Programmen mit JavaScript einzubauen. Wenn man also Shift (Strg ist leider in vielen Kombinationen schon vom IE belegt) und H drückt kommt man auf Home. Ich habe also in body-tag onLoad="init()" und dann im head folgendes Script:
HTML-Code:
<script language="JavaScript">
function init()
{
window.focus()				//Damit die Seite auch aktiv ist und Tastendrücke bemerkt
document.onkeydown=check1		//Wenn eine Taste gedrückt wird, ...
	function check1(taste)		//...wird eine Funktion aufgerufen...
	{if (event.keyCode=="16") 		//...die überprüft ob es die Shift-Taste ist.
	{
	document.onkeydown=check2;	//Wenn jetzt die nächste Taste gedrückt wird, ...
	}
	function check2(taste)		//...wird geprüft...
	{
	if (event.keyCode=="72") 		//...ob es das H ist.
	{
	openWin("home.htm")		// In dem Fall geht er auf home.htm
	}}}}
</script>
Und warum geht das jetzt nicht? Ich habe schon etliche Zusätze gelöscht, die ich vorher drin hatte, aber es wird einfach nichts!

Wäre echt nett, wenn jemand ne Lösung weiß!

Bis dann,
Jannik

______________
Ich habe die Seite mit dem Code auch auf www.jannikarndt.de/taste.htm gestellt!
Angehängte Dateien
Dateityp: zip Tastenkombinationen.zip (957 Bytes, 0x aufgerufen)
JannikArndt ist offline   Mit Zitat antworten
Alt 17-10-2004, 16:57   #2 (permalink)
flachzange
 
Benutzerbild von elias
 
Registriert seit: Jun 2003
Ort: berlin
Beiträge: 3.932
habs mir nicht angesehen. aber reicht dir das nicht zufällig:

http://de.selfhtml.org/html/formular...ur.htm#kuerzel
__________________
elias ist offline   Mit Zitat antworten
Alt 17-10-2004, 18:52   #3 (permalink)
Neuer User
 
Registriert seit: Oct 2004
Beiträge: 10
Hi! Das ist ganz praktisch, aber wie soll ich das mit dem Hyperlink verbinden?
JannikArndt ist offline   Mit Zitat antworten
Alt 17-10-2004, 19:23   #4 (permalink)
flachzange
 
Benutzerbild von elias
 
Registriert seit: Jun 2003
Ort: berlin
Beiträge: 3.932
aha, wie gesagt ich habs nicht gelesen
aber ne lösung fällt mir da ein:
weise den access key einfach einem button zu, der wiederrum könnte halt
ein formular absenden oder ein javascript auslösen. diesen button könntest
du dann per css verstecken, wenn er dich stört.

mit den events gehts sicher auch, aber hab ich noch nie gemacht.
hast du denn mal mitm alert geprüft ob überhaupt was passiert?
__________________
elias ist offline   Mit Zitat antworten
Alt 18-10-2004, 05:46   #5 (permalink)
Neuer User
 
Registriert seit: Oct 2004
Beiträge: 10
Hi! Auf alert hätte ich auch kommen sollen, aber vielen Dank. So weiß ich wenigstens, dass mein Script funktioniert. Der Nachteil,: jetz weiß ich, dass der Fehler beim Link liegt. Aber mir fällt absolut nicht der Code ein, um das hinzukriegen. Ich habe bis jetzt sowas:

HTML-Code:
<script language="JavaScript">
function init()
{
window.focus()
document.onkeydown=check1
	function check1(taste)
	{	if (event.keyCode=="16") 
		{
			document.onkeyup=init;
			document.onkeydown=check2;
		}
				function check2(taste)
				{
					if (event.keyCode=="72") 
					{
						alert("Bis hier hat's geklappt");
						openWin("home.htm")
					}
				}
	}
}
</script>
hinzugelommen ist, dass wenn man Shift wiederloslässt, auch das H nichts mehr bewirkt.
JannikArndt ist offline   Mit Zitat antworten
Alt 18-10-2004, 09:09   #6 (permalink)
flachzange
 
Benutzerbild von elias
 
Registriert seit: Jun 2003
Ort: berlin
Beiträge: 3.932
inwiefern liegts beim link? benutzt du en mozilla zum debuggen?
__________________
elias ist offline   Mit Zitat antworten
Alt 18-10-2004, 13:05   #7 (permalink)
Neuer User
 
Registriert seit: Oct 2004
Beiträge: 10
Ich versuche einfach nur, es im Internet Explorer anzuzeigen. Der debugged standardmäßig mit dem Script Editor. Von Mozilla hab ich keine Ahnung. Aber der Fehler muss ja irgendwie im JavaScript liegen, scließlich macht er ja an der Stelle Radau.
JannikArndt ist offline   Mit Zitat antworten
Alt 18-10-2004, 16:55   #8 (permalink)
flachzange
 
Benutzerbild von elias
 
Registriert seit: Jun 2003
Ort: berlin
Beiträge: 3.932
mit moz oder firefox isses einfacher
__________________
elias ist offline   Mit Zitat antworten
Alt 23-10-2004, 11:24   #9 (permalink)
Neuer User
 
Registriert seit: Oct 2004
Beiträge: 10
Endlich fertig

Tach nochmal! Ich habe noch ein bisschen rumprobiert und es funktioniert endlich. Falls jemand das Script auf seine Seite einbinden möchte (ist praktisch, da es die Navigation sehr viel schneller macht), gerne:

HTML-Code:
<script language="JavaScript">
// Author: [email]Jannik@JannikArndt.de[/email]
function init()
{
window.focus()
document.onkeydown=check1
	function check1(taste)
	{	if (event.keyCode=="16") 
		{
			document.onkeyup=init;
			document.onkeydown=check2;
		}
				function check2(taste)
				{
					if (event.keyCode=="72")	{window.main.location.href="hausaufgaben.htm"}
					if (event.keyCode=="71")	{window.main.location.href="http://www.b404.net/cgi-bin/guestbook.php.cgi"}
					if (event.keyCode=="70")	{window.main.location.href="klassenfahrt.htm"}
					if (event.keyCode=="83")	{window.main.location.href="schulisches_content/stunden.htm"}
					if (event.keyCode=="76")	{window.main.location.href="liste_content/liste_full.htm"}
					if (event.keyCode=="66")	{window.main.location.href="pics_content/pics_main.htm"}
					if (event.keyCode=="75")	{window.main.location.href="kalender.htm"}
				}
	}
}
</script>
Ich habe den Code window.main.location.href benutzt, weil man so einen bestimmten Frame (bei mir "main") auswählen kann. Das Script muss dann nur im übergeordneten Framset liegen. Wenn man keine Frames benutzt, braucht man nur location.href zu schreiben, dann muss man den Code aber auf jede Seite packen.

Viel Spaß damit,
Jannik
JannikArndt ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 03:32 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2014 Marc Thiele