Toon posts:

[JS] Ctrl + Z overrulen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ppl,

Ik heb de volgende code:
code:
1
2
3
4
if(event.ctrlKey && event.keyCode == "122")
    {
        alert('ctrl + z');
    }

Hiermee wil ik ctrl + z afvangen alleen is dit al een functie van IE en dat wil dus niet. Is dit te overrulen?
Dit wordt uitgevoerd in een div:
code:
1
2
3
<div id="output" contenteditable='true'>
{content}
</div>

Met een ctrl + enter als voorbeeld doet ie het netjes natuurlijk.

PS: IE only is OK.

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 21:34

crisp

Devver

Pixelated

losse pols (en even alleen met IE in gedachten):

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function checkKey(e) {

  if (typeof e == 'undefined') e = event;

  if (typeof e.keyCode != 'undefined' && e.keyCode == 122 && e.ctrlKey == true) {

    e.keyCode = 0;
    e.returnValue = 0;
    e.cancelBubble = true;

  }

}

document.getElementById('output').onkeypress = checkKey;

[ Voor 25% gewijzigd door crisp op 13-07-2004 22:12 ]

Intentionally left blank


Verwijderd

crisp schreef op 13 juli 2004 @ 22:11:
losse pols (en even alleen met IE in gedachten):

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function checkKey(e) {

  if (typeof e == 'undefined') e = event;

  if (typeof e.keyCode != 'undefined' && e.keyCode == 122 && e.ctrlKey == true) {

    e.keyCode = 0;
    e.returnValue = 0;
    e.cancelBubble = true;

  }

}

document.getElementById('output').onkeypress = checkKey;
Gaat helaas niet werken. Ik weet uit ervaring dat mijn comp. altijd keyCode == 90 neemt voor de Z, of die nou in upper- of in lowercase is. Sommige laptop toetseborden retouneren bij e.ctrlKey altijd false, daarom kan je ook nog controleren of e.ctrlLeft gezet is.

code:
1
2
3
4
5
6
7
8
9
10
11
function checkKey(e) {

  if (typeof e == 'undefined') e = event;

  if (typeof e.keyCode != 'undefined' && (e.keyCode == 90 || e.keyCode == 122) && (e.ctrlLeft == true || e.ctrlKey == true)) {
    e.keyCode = 0;
    e.returnValue = 0;
    e.cancelBubble = true;
  }

}