我有一个ul li键盘,该键盘会先获取4个数字,然后获取3个字母,然后再禁用自身。但是,如果用户单击删除按钮,它将不会重新启用自己。
我以为“如果长度小于8,我只添加.removeClass('disabled')可能会起作用。但是我很确定那不是这样的。请帮帮我。
$(function() {
var $write = $('#write'),
symbols = $('.symbol'),
letters = $('.letter'),
shift = false,
capslock = false;
$('#keyboard li').click(function() {
var $this = $(this),
character = $this.html(); // If it's a lowercase letter, nothing happens to this variable
// Shift keys
if ($this.hasClass('left-shift') || $this.hasClass('right-shift')) {
$('.letter').toggleClass('uppercase');
$('.symbol span').toggle();
shift = (shift === true) ? false : true;
capslock = false;
return false;
}
// Caps lock
if ($this.hasClass('capslock')) {
$('.letter').toggleClass('uppercase');
capslock = true;
return false;
}
// Delete
if ($this.hasClass('delete')) {
var html = $write.html();
$write.html(html.substr(0, html.length - 1));
return false;
}
// Special characters
if ($this.hasClass('symbol')) character = $('span:visible', $this).html();
if ($this.hasClass('space')) character = ' ';
if ($this.hasClass('tab')) character = "\t";
if ($this.hasClass('return')) character = "\n";
// Uppercase letter
if ($this.hasClass('uppercase')) character = character.toUpperCase();
// Remove shift once a key is clicked.
if (shift === true) {
$('.symbol span').toggle();
if (capslock === false) $('.letter').toggleClass('uppercase');
shift = false;
}
除了缺少重要功能外,它还可以做一些需要做的事情。没有足够的经验来解决此问题。(ps这个键盘实际上不关心textarea字符限制,因为它不是在按键时,我不知道它是什么。所以我只是作了一些即兴的工作来解决。如果您只是用键盘写它,它将最多输入4个字母,因为这是文本区域的限制。如果使用屏幕键盘进行书写,您将获得7.帮助。)
(PSS:为什么“ LEFT-TAB”在最小化时会继续上升?)
相关分类