Cách tạo lối tắt bàn phím cho ứng dụng HTML5? Sử dụng các sự kiện quan trọng không hoạt động vì một số trình duyệt đã xác định hầu hết các đầu vào đó cho các tính năng tích hợp như Lưu dưới dạng ..., (vô ích cho các ứng dụng tương tác).Tạo lối tắt bàn phím cho ứng dụng HTML5 của bạn?
Trả lời
Vâng, đó là một việc cho tôi: (Ctrl-S trong Chrome)
$(document).keydown(function(evt){
if (evt.keyCode==83 && (evt.ctrlKey)){
evt.preventDefault();
alert('worked');
}
});
có, điều quan trọng là sử dụng 'event.preventDefault()'. Tuy nhiên, một số phím tắt sẽ không hoạt động trong một số trình duyệt trong khi những phím khác sẽ không hoạt động trong các trình duyệt khác – lordvlad
Tôi thấy điểm của bạn, ctrl-s sẽ kích hoạt hộp thoại lưu với cảnh báo trong FF, nhưng như Juan Mendes đã đề cập ở trên, bạn nên sử dụng phím tắt không được sử dụng trong bất kỳ trình duyệt nào hoặc có bí danh cho phím nóng của bạn cho các trình duyệt khác nhau. Tôi chắc chắn không thể nhìn thấy bất kỳ cách nào khác, như một ứng dụng web không thể ghi đè lên chức năng được xây dựng trong. Có lẽ bạn nên xem xét việc viết các plugin cho điều đó. – apoq
Chắc chắn, event.preventDefault() thực sự là điểm mấu chốt mà tôi đã bỏ lỡ. Tôi có thể hỏi nếu tôi giải pháp của bạn là cross-trình duyệt (như trong, về đặc điểm kỹ thuật)? – MaiaVictor
hãy thử đưa ra một cái nhìn này.
http://www.openjs.com/scripts/events/keyboard_shortcuts/#add_docs
mẫu để thêm shortcut
shortcut.add("Ctrl+B",function() {
alert("Bold");});
mẫu để loại bỏ shortcut
shortcut.remove("Ctrl+B");
shortcuts.js cực kỳ chậm. nó làm cho việc gõ một cơn ác mộng. –
Bạn có để hiển thị những gì bạn đã cố gắng, và những gì bạn không thích, có nhiều phím tắt không được trình duyệt đưa lên ... –