Javascript 莫名其妙;“未定义”不是一个函数;错误—;由「;getElementsById";

Javascript 莫名其妙;“未定义”不是一个函数;错误—;由「;getElementsById";,javascript,if-statement,undefined,undefined-function,Javascript,If Statement,Undefined,Undefined Function,我花了几个小时来调试这个Javascript。第一个if块执行得很好,但当我尝试执行第二个if语句时,会收到一条“undefined is not a function”错误消息 我已经检查了JSLint和JSHint,并尝试注释掉部分代码,但没有效果。任何帮助都将不胜感激 var nimbus_char_count = 0; var nimbus_line_count = 1; var i = 2; var j = 2; //This block executes fine function

我花了几个小时来调试这个Javascript。第一个if块执行得很好,但当我尝试执行第二个if语句时,会收到一条“undefined is not a function”错误消息

我已经检查了JSLint和JSHint,并尝试注释掉部分代码,但没有效果。任何帮助都将不胜感激

var nimbus_char_count = 0;
var nimbus_line_count = 1;
var i = 2;
var j = 2;

//This block executes fine
function set_char(increment) {
    //Test success cases
    if (increment === 1 && nimbus_char_count < 3) {
        nimbus_char_count = nimbus_char_count + 1;
        $("#nimbus_char" + (nimbus_char_count - 1)).addClass("nimbus_drop");
    } else if (increment === -1 && nimbus_char_count > 0) {
        nimbus_char_count = nimbus_char_count - 1;
        $("#nimbus_char" + nimbus_char_count).removeClass("nimbus_drop");
    } else {
        nimbus_flash_red();
    }
}
//This block throws a "undefined is not a function"
function set_lines(increment) {
    if (increment === 1 && nimbus_line_count < 4) {
        nimbus_line_count = nimbus_line_count + 1;
        for (i = 2; i >= 0; i = i - 1) {
            $().getElementsById("#nimbus_char").addClass("nimbus_drop" + i);
        }
    } else if (increment === -1 && nimbus_char_count > 1) {
        nimbus_char_count = nimbus_char_count - 1;
        for (j = 2; j >= 0; j = j - 1) {
            $().getElementsById("#nimbus_char").addClass("nimbus_drop" + j);
        }
    } else {
        nimbus_flash_red();
    }
}
var nimbus\u char\u count=0;
var nimbus_line_count=1;
var i=2;
var j=2;
//这个块执行得很好
函数集字符(增量){
//测试成功案例
如果(增量===1&&nimbus\u字符数<3){
光圈数=光圈数+1;
$(“#nimbus_char”+(nimbus_char_count-1)).addClass(“nimbus_drop”);
}else if(增量==-1&&nimbus\u char\u count>0){
nimbus_char_count=nimbus_char_count-1;
$(“#nimbus_char”+nimbus_char_count).removeClass(“nimbus_drop”);
}否则{
灵光闪烁红色();
}
}
//此块抛出“未定义的不是函数”
函数集_行(增量){
如果(增量===1&&nimbus\u行数<4){
光圈线数=光圈线数+1;
对于(i=2;i>=0;i=i-1){
$().getElementsById(“#nimbus_char”).addClass(“nimbus_drop”+i);
}
}else if(增量==-1&&nimbus\u char\u count>1){
nimbus_char_count=nimbus_char_count-1;
对于(j=2;j>=0;j=j-1){
$().getElementsById(“#nimbus_char”).addClass(“nimbus_drop”+j);
}
}否则{
灵光闪烁红色();
}
}
$()。getElementsById(“#nimbus_char”)
不是有效的jQuery

我想你的意思是
$(“#nimbus_char”)
$()。getElementsById(“#nimbus_char”)
不是有效的jQuery


我想您的意思是
$(“#nimbus_char”)
这可能是因为您编写了
getElementsById
(使用s)而不是getElementById(),后者实际上在文档中,而不是jQuery中

尝试使用与第一个块中相同的代码访问元素:


$(“#id_goes_here”)
document.getElementById(“id_goes_here”)
这可能是因为您编写了
getElementsById
(带有s)而不是getElementById(),后者实际上在文档中,而不是jQuery中

尝试使用与第一个块中相同的代码访问元素:


$(“#id#u转到这里”)
document.getElementById(“id#u转到这里”)

光轮闪烁在哪里@Sudhir,它是另一个javascript文件的一部分。这个js文件中应该包含这些内容吗?我对示波器不太在行。光轮在哪里@Sudhir,它是另一个javascript文件的一部分。这个js文件中应该包含这些内容吗?我对望远镜不在行,是的!我真是只野狗。非常感谢。:)对我真是只野狗。非常感谢。:)