
Merhaba arkadaşlar,
Bu yazımızda HTML accesskey ile buton vs. tıklamaları için klavyeden kısayol tanımlamalarını nasıl yaptığımız öğreneceğiz. Örneğin; sayfamızda Kopyala ve Yapıştır butonları var ve bu butonları tıkladığımızda bir alandaki metni kopyalayıp aynı alana yapıştırmak istiyoruz ve kısayol tuşları ile de bu işlemleri yapmak istiyoruz. Yapmamız gereken işlemler şöyledir:
// HTML İÇERİĞİ
<ul>
<li>
<button accesskey="c" onclick="kopyala()">Kopyala</button>
<button accesskey="v" onclick="yapistir()">Yapıştır</button>
</li>
<li class="metin"></li>
</ul>
// JAVASCRİPT
function kopyala(){
var $temp = $("");
$("body").append($temp);
$temp.val($('.metin').text()).select();
document.execCommand("copy");
$temp.remove();
alert('Metin kopyalandı!');
}
function yapistir(){
var metin = $('.metin').html();
$('.metin').append(metin);
}Stil kodlarımızı eklemedim, kendinize göre düzenleyebilirsiniz. Şimdi kodumuzu açıklayalım. İlk olarak HTML sayfamıza iki adet buton ekledik. Bu butonlara ACCESSKEY ile kısayol tanımladık. Bir de bu butonlara tıklanıldığında yapılacak işlemin fonksiyon adını yazdık. Kopyalama ve yapıştırma için kullanılacak içerik alanını ".metin" olarak tanımladık.
HTML ile ilgili işlemleri tamamladıktan sonra JAVASCRİPT ile kopyala() ve yapistir() fonksiyonlarımızın işlevlerini belirledik. Butonlara, fonksiyon bir işlev tanımlamazsak kısayol tuşlarına tıkladığımızda sadece buton seçili hale gelir.
Accesskey kısayollarının çalışabilmesi için Alt, Shift veya Ctrl kullanmak gerekiyor. Google Chrome için ALT+C ve ALT+V yi kullanabilirsiniz. Tarayıcıya göre kullanımlar aşağıdadır.
Browser
Windows
Linux
Mac
Internet Explorer
[Alt] + accesskey
N/A
Chrome
[Alt] + accesskey
[Alt] + accesskey
[Control] [Alt] + accesskey
Firefox
[Alt] [Shift] + accesskey
[Alt] [Shift] + accesskey
[Control] [Alt] + accesskey
Safari
[Alt] + accesskey
N/A
[Control] [Alt] + accesskey
Opera
Opera 15 or newer: [Alt] + accesskey
Opera 12.1 or older: [Shift] [Esc] + accesskey
Kodumuzun demosunu bu linkten kontrol edebilirsiniz.
Hepinize keyifli kodlamalar :)