---
title: "Knapptryck"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/64780-knapptryck"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "#L#"
published: "2003-01-13T20:02:32.000Z"
updated: "2003-01-14T10:42:03.000Z"
replies: 22
views: 492
page: 1
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/64780-knapptryck"
---

# Knapptryck

_Sida 1 av 2._

## #1 — #L#, 2003-01-13T20:02Z

Tänkte bygga en lite knappfunktion som öppnar en "dold" sida ...

ex. 

När fönstret är aktivt och man klickar ctr+shift+s så skall ett nytt specifikt fönster öppnas ... 

möjligt?

snabbt svar belönas med ett "tack" ;)

Permalänk: https://www.webforum.nu/p/64780

## #2 — #L#, 2003-01-13T20:38Z

tuddiloo..

Permalänk: https://www.webforum.nu/p/911664

## #3 — Peter S, 2003-01-13T20:44Z

Jag tror det blir svårt att kombinera de olika tangenterna. Däremot skulle du kunna göra så här:

```
<script type="text/javascript">
<!--

document.onkeydown = function(){
	if(event.keyCode==16)
		window.open("foo.html","","height=300,width=300");
};

//-->
</script>
```

I detta exempel kommer ett fönster att öppnas om du trycker på "shift". Det fungerar givetvis även med andra tangenter, men då får du byta ut talet 16 i koden, till motsvarigheten för den önskade tangenten.

Kan även säga att detta endast fungerar i IE.

 :)

Permalänk: https://www.webforum.nu/p/911676

## #4 — #L#, 2003-01-13T21:08Z

Att det bara funkar i IE är bara bra .. då detta är enda browser jag använder både hemma och i skolan...

hm.. det är svårt att kombinera knappar säger du..

det går inte att lösa så att man är tvungen att trycka på säg två knappar i en följd ...

ex.

f och sen shift

?

Permalänk: https://www.webforum.nu/p/911711

## #5 — Peter S, 2003-01-13T21:13Z

Att trycka på knappar i en viss följd går hur bra som helst. Koden för "Shift"-tangenten och "f" eller vice versa skulle kunna se ut så här:

```
var n = 0;

document.onkeydown = function(){
	n += event.keyCode;

	if(n==86){
		window.open("foo.html","","height=300,width=300");
		n = 0;
	}
};
```

 :)

Permalänk: https://www.webforum.nu/p/911717

## #6 — Jojoxx, 2003-01-13T21:17Z

Lite närmare kanske;

```
sh=0; s=0;
document.onkeydown = function(){
	if(event.keyCode==16) sh=new Date().getTime();
	if(event.keyCode==83) s=new Date().getTime();
	var now=new Date().getTime();
	if(now-sh<500&&now-s<500){
		window.open("foo.html","","height=300,width=300");
	}
}
```

Tyvärr så genererar \[ctrl\] inte någon keyCode.

Permalänk: https://www.webforum.nu/p/911719

## #7 — Jojoxx, 2003-01-13T21:19Z

Peter, där behöver det ju inte vara just \[shift\] och "F", bara resultatet blir 86 efter ett tag... :)

Permalänk: https://www.webforum.nu/p/911721

## #8 — #L#, 2003-01-13T21:23Z

Har inte tangentkoderna tillängliga ... lika bra att jag skriver ut vad jag vill skall hända så det blir rätt gjort direkt :)

Efter jag tryckt på alt,shift,s skall ett popup-fönster (utan statusbar etc, bredd 335px - höjd 420px) öppnas, sökvägen till filen som skall visas i fönstret är "info/stats.asp"

Tack på förhand :)

Permalänk: https://www.webforum.nu/p/911728

## #9 — Peter S, 2003-01-13T21:23Z

Ja, jag märker det  :e 

Det kanske är ett tecken på att John Blund skulle vilja ha en diskussion med mig nu...

 :)

Permalänk: https://www.webforum.nu/p/911729

## #10 — Peter S, 2003-01-13T21:27Z

> Tyvärr så genererar \[ctrl\] inte någon keyCode.

Det var konstigt. Följande genererar iallafall talet 17 för mig:

```
document.onkeydown = function(){
     alert(event.keyCode);
}
```

 :)

Permalänk: https://www.webforum.nu/p/911733

## #11 — Jojoxx, 2003-01-13T21:28Z

Ahh... hittade just event.altKey och event.ctrlKey :)

```
sh=0; s=0;
document.onkeydown = function(){
	if(event.keyCode==16) sh=new Date().getTime();
	if(event.keyCode==83) s=new Date().getTime();
	var now=new Date().getTime();
	if(now-sh<500&&now-s<500&&event.altKey){
		window.open("info/stats.asp","","height=420,width=335");
	}
}
```

Permalänk: https://www.webforum.nu/p/911734

## #12 — Jojoxx, 2003-01-13T21:31Z

> Det var konstigt. Följande genererar iallafall talet 17 för mig.

Det kan nog skilja från version till version av webbläsare. Jag vet att jag provat förrut utan få någon keyCode på dessa tangenter, men i IE6.0 verkar det fungera i alla fall.

Permalänk: https://www.webforum.nu/p/911739

## #13 — Jojoxx, 2003-01-13T21:35Z

Detta är dock snyggare;

```
var keyboard=new Object();
document.onkeyup = function(){ keyboard[event.keyCode]=false; }
document.onkeydown = function(){
	keyboard[event.keyCode]=true;
	if(keyboard[83]&&event.shiftKey&&event.altKey){
		window.open("info/stats.asp","","height=420,width=335");
	}
}
```

(\[alt\]+\[shift\]+"s" alltså)

Permalänk: https://www.webforum.nu/p/911743

## #14 — #L#, 2003-01-13T21:37Z

Bugar och bockar!

Kalas killar! :)

Permalänk: https://www.webforum.nu/p/911748

## #15 — Peter S, 2003-01-13T21:38Z

Å andra sidan är det ju inte varje dag man skriver kod som involverar keyCode...

 :)

Permalänk: https://www.webforum.nu/p/911749

## #16 — Peter S, 2003-01-13T21:43Z

För att det inte skall fungera att endast trycka "alt"+"shift" efter att fönstret "poppat" upp för första gången, kan du modifiera koden lite grand:

```
document.onkeydown = function(){
	keyboard[event.keyCode]=true;

	if(keyboard[83]&&event.shiftKey&&event.altKey){
		window.open("info/stats.asp","","height=420,width=335");
		[B]keyboard[event.keyCode]=false;[/B]
	}
}
```

 :)

Permalänk: https://www.webforum.nu/p/911753

## #17 — #L#, 2003-01-13T22:07Z

Peter S

(Y)

Permalänk: https://www.webforum.nu/p/911762

## #18 — #L#, 2003-01-13T22:09Z

oj.. nu kommer inget fönster upp.. piper bara till när jag trycker ner knapparna..

Permalänk: https://www.webforum.nu/p/911763

## #19 — Jojoxx, 2003-01-14T06:37Z

> **Peter S skrev:**
>
> För att det inte skall fungera att endast trycka "alt"+"shift" efter att fönstret "poppat" upp för första gången...

Du har missat **onkeyup**\-eventet;

document.onkeyup = function(){ keyboard\[event.keyCode\]=false; }

> **\#L# skrev:**
>
> oj.. nu kommer inget fönster upp.. piper bara till när jag trycker ner knapparna..

Kolla så att din tangentbordkombination inte krockar med någon som används av operativet eller Internet Explorer, ellet något annat program. \[alt\]+\[shift\]+s funkar bra för mig. \[ctrl\]+\[shift\]+"anykey" krockar ofta med ICQ till exempel.

Permalänk: https://www.webforum.nu/p/911893

## #20 — colione, 2003-01-14T06:39Z

\[r\]Jojoxx han före\[/r\]

Permalänk: https://www.webforum.nu/p/911895

---

Tråden på webben: https://www.webforum.nu/amne/javascript/64780-knapptryck  
Nästa sida: https://www.webforum.nu/amne/javascript/64780-knapptryck/page2.md
