【发布时间】:2012-02-10 19:10:53
【问题描述】:
我正在尝试简化此脚本。我有 50 个这样的 if e.keyCode 语句,所以双重嵌套 if/else 语句看起来很荒谬,但我所做的所有其他尝试都没有奏效。
第一个 if/else 语句 if(e.keyCode == 66 && e.shiftKey) 是必要的,但我不确定第二个 if (typedAdjusted >= paperWidth % charWidth) 如果在相对于固定宽度的行上键入了太多字符,则会引发警告。
if (typedAdjusted >= paperWidth % charWidth) 给我的功能可以是全球性的吗?需要根据特定的 keyCodes 对其进行检查。例如,字母“B”应该输入到 typedAdjusted 中,而 BACKSPACE 和 TAB 和 COMMAND 则不应该。
var typed = $("span.char").length;
var typedAdjusted = typed+1;
var paperWidth = 900;
var charWidth = 44;
if (e.keyCode == 66) {
if (e.keyCode == 66 && e.shiftKey) {
$('#charLine-1').append('<span class="char">B</span>');
if (typedAdjusted >= paperWidth % charWidth) {
$('body').append('<span id="warning">WARNING!</span>');
}
else {
return false;
}
}
else {
$('#charLine-1').append('<span class="char">b</span>');
if (typedAdjusted >= paperWidth % charWidth) {
$('body').append('<span id="warning">WARNING!</span>');
}
else {
return false;
}
}
}
【问题讨论】:
标签: javascript jquery if-statement global-variables