JavaScript函数未定义 - 语法错误
问题描述:
复制函数执行以下操作:如果用户在文本区域输入@,则会使div可见并使用关键字数组中的建议填充div。任何数组条目匹配@后输入的内容,直到div中填充空格。复制功能附加到文本区域的onkeyup事件JavaScript函数未定义 - 语法错误
突然,浏览器报告函数Copy未定义。我相信这可能是我缺少的语法错误。我已经看过我的代码数十亿次了,我找不到一个错误。
function copy()
{
var ta = document.getElementById("ta") ;
var taarray = ta.value.split(" ") ;
var lastword = taarray[taarray.length - 1] ;
document.getElementById('selector').innerHTML = " " ;
if (lastword.indexOf("@") == 0)
{
selector1(); // Function that makes the div visible
if (lastword.substr(1).length > 0)
{
var f = 0 ;
while (f <= friends.length)
{
if (friends[f].toLowerCase().indexOf(lastword.substr(1).toLowerCase()) != -1)
{
var x ;
x = "<a onmouseover=projectImage('" + friends[f].split(|)[1] + "') onclick=tagfriend('" + friends[f].split("|")[1] + "') >" ;
x += friends[f].split("|")[0] ;
x += "</a>" ;
document.getElementById('selector').innerHTML = x + "<br />" ;
}
f++ ;
}
}
}
else
{
}
}
答
您的错误说“复制”是未定义的,因为您将函数定义为“复制”(小写)。 JS中的变量和函数名称区分大小写。然而,这只是评论中提出的许多其他错误之一。你应该考虑使用像JSLint这样的调试工具来解决这些问题。
你得到的具体错误是什么? – Shmiddty
'朋友[f] .split(|)[1]'' - JSHint在下次第一次时会出现语法错误... – gengkev
请确保您的函数是在'window.onload'事件中定义的,或者是在body在脚本标记中。 – 0x499602D2