javascript - 引用错误: Can't find variable: functionName

标签 javascript jquery html

我知道这个主题有很多主题,但这些主题都没有解决我的问题。

我有一个javascript代码,里面有几个函数,大约一个小时后,我终于发现在特殊函数下定义的所有函数都不起作用,并且出现错误“ReferenceError:找不到变量:functionName”将出现,并且在该特殊功能之上定义的所有其他功能都可以正常工作。 我的问题是我无法找出导致此问题的特殊函数出了什么问题......任何人都可以帮助我吗?

这是这个特殊功能:

function shift(btn) {
if (!shiftPressed) {
    document.getElementById("keyShift1").style.background = "rgb(180,50,0)";
    document.getElementById("keyShift2").style.background = "rgb(180,50,0)";
    for (var i = 65; i <= 90; i++) {
        var id = "key" + String.fromCharCode(i);
        document.getElementById(id).innerHTML = document.getElementById(id).value.toUpperCase();
    }
    document.getElementById("key~").innerHTML = "`";
    shiftPressed = !shiftPressed;

} else {
    document.getElementById("keyShift1").style.background = "black";
    document.getElementById("keyShift2").style.background = "black";

    document.getElementById("key~").innerHTML = "~";
    if (!capsPressed) {
        for (var i = 65; i <= 90; i++) {
            var id = "key" + String.fromCharCode(i);
            document.getElementById(id).innerHTML = document.getElementById(id).value.toLowerCase();
        }
    }
    shiftPressed = !shiftPressed;
}

最佳答案

您错过了函数末尾的大括号

应该是

function shift(btn) {
    if (!shiftPressed) {
        document.getElementById("keyShift1").style.background = "rgb(180,50,0)";
        document.getElementById("keyShift2").style.background = "rgb(180,50,0)";

        for (var i = 65; i <= 90; i++) {
            var id = "key" + String.fromCharCode(i);
            document.getElementById(id).innerHTML = document.getElementById(id).value.toUpperCase();
        }

        document.getElementById("key~").innerHTML = "`";
        shiftPressed = !shiftPressed;
    } else {
        document.getElementById("keyShift1").style.background = "black";
        document.getElementById("keyShift2").style.background = "black";
        document.getElementById("key~").innerHTML = "~";

        if (!capsPressed) {
            for (var i = 65; i <= 90; i++) {
                var id = "key" + String.fromCharCode(i);
                document.getElementById(id).innerHTML = document.getElementById(id).value.toLowerCase();
            }
        }

        shiftPressed = !shiftPressed;
    }
}

关于javascript - 引用错误: Can't find variable: functionName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36644565/

相关文章:

javascript - 从 SAPUI5 中的 <select> 标记获取值的标准方法是什么?如果存在于表中

javascript - jquery:通过指定数据属性删除元素

javascript - 仅在 mouseenter 上显示第一个类别的 div

html - Bootstrap - 在没有砌体的情况下用完垂直空间

html - 使用属性缩放不好吗?

javascript - VueJS 将所​​有 Prop 传递给子组件

javascript - 删除字符串内的特定值

JavaScript 突出显示选定的表格行

jquery - 使用 jQuery animate 扩展高度时 div 中的文本移动

javascript - 为什么这个 jQuery OOP 属性变得未定义?