KeyboardEvent hangi Özellik
Örnek
Basılan klavye tuşunun Unicode değerini alın:
var x = event.which;
Aşağıda daha fazla "Kendiniz Deneyin" örnekleri.
Tanım ve Kullanım
what özelliği, onkeypress olayını tetikleyen anahtarın Unicode karakter kodunu veya onkeydown veya onkeyup olayını tetikleyen anahtarın Unicode anahtar kodunu döndürür .
İki kod türü arasındaki fark:
- Karakter kodları - Bir ASCII karakterini temsil eden bir sayı
- Tuş kodları - Klavyedeki gerçek bir tuşu temsil eden bir sayı
Bu tipler her zaman aynı anlama gelmez; örneğin, küçük harf "w" ve büyük harf "W" aynı klavye koduna sahiptir, çünkü klavyede basılan tuş aynıdır (yalnızca "W" = "87" sayısı), ancak farklı bir karakter kodu, çünkü elde edilen karakter farklıdır ("w" veya "W", "119" veya "87"dir) - Daha iyi anlamak için aşağıdaki "Diğer Örnekler"e bakın.
İpucu: Kullanıcının yazdırılabilir bir tuşa (örneğin "a" veya "5") basıp basmadığını öğrenmek için onkeypress olayında bu özelliğin kullanılması önerilir. Kullanıcının bir fonksiyon tuşuna (örneğin "F1", "CAPS LOCK" veya "Home") basıp basmadığını öğrenmek için onkeydown veya onkeyup olayını kullanın.
Not: Hangi özellik IE8 ve önceki sürümlerde desteklenmez. Bu tarayıcı sürümleri için keyCode özelliğini kullanabilirsiniz. Ancak keyCode özelliği, Firefox'taki onkeypress olayında çalışmaz. Tarayıcılar arası bir çözüm için aşağıdaki kodu kullanabilirsiniz:
var x = event.which || event.keyCode; // Use either which or keyCode, depending on browser support
İpucu: Tüm Unicode karakterlerinin bir listesi için lütfen Tam Unicode Referansımızı inceleyin .
İpucu: Döndürülen Unicode değerini bir karaktere dönüştürmek istiyorsanız, fromCharCode() yöntemini kullanın.
Not: Bu özellik salt okunurdur.
Not: Hem that hem de keyCode özelliği yalnızca uyumluluk için sağlanmıştır. DOM Events Spesifikasyonunun en son sürümü, bunun yerine (varsa) key özelliğinin kullanılmasını önerir.
İpucu: Bir anahtar olayı meydana geldiğinde "ALT", "CTRL", "META" veya "SHIFT" tuşuna basılıp basılmadığını öğrenmek istiyorsanız, altKey , ctrlKey , metaKey veya shiftKey özelliğini kullanın.
Tarayıcı Desteği
Tablodaki sayılar, özelliği tam olarak destekleyen ilk tarayıcı sürümünü belirtir.
Property | |||||
---|---|---|---|---|---|
which | Yes | 9.0 | Yes | Yes | Yes |
Sözdizimi
event.which
Teknik detaylar
Geri dönüş değeri: | Unicode karakter kodunu veya Unicode anahtar kodunu temsil eden bir Sayı |
---|---|
DOM Sürümü: | DOM Seviye 2 Etkinlikleri |
Daha fazla örnek
Örnek
Karakter kodları ve klavye kodları arasındaki farkları göstermek için onkeypress ve onkeydown'ı kullanma:
<input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)">
function uniCharCode(event) {
var char = event.which || event.keyCode; // event.keyCode is used for IE8 and earlier
document.getElementById("demo").innerHTML = "Unicode CHARACTER code: " + char;
}
function uniKeyCode(event) {
var key = event.which || event.keyCode; // event.keyCode is used for IE8 and earlier
document.getElementById("demo2").innerHTML = "Unicode KEY code: " + key;
}
Klavyede "a" tuşuna basıldığında (büyük harf kilidi kullanılmadığında), karakter ve tuşun sonucu şöyle olacaktır:
Unicode CHARACTER code: 97
Unicode KEY code: 65
Örnek
Kullanıcı Escape tuşuna basarsa bir metni uyarın:
<input type="text" onkeydown="myFunction(event)">
function myFunction(event) {
var x = event.which || event.keyCode; // event.keyCode is used for IE8 and earlier
if (x == 27) { // 27 is the ESC key
alert ("You pressed the Escape key!");
}
}
Örnek
Unicode değerini bir karaktere dönüştürün (işlev tuşları için çalışmaz):
var x = event.which || event.keyCode; // Get the Unicode value
var y = String.fromCharCode(x); // Convert the value into a character
İlgili Sayfalar
HTML DOM referansı: KeyboardEvent anahtarı Özellik
HTML DOM referansı: KeyboardEvent keyCode Özellik
HTML DOM referansı: KeyboardEvent charCode Özellik