js初学者,有个问题,求大神指教。
源代码如下:
<script type="text/javascript">
window.onload =function () {
function getFocus(obj,msg) {
var obj =document.getElementById(obj);
var msg =document.getElementById(msg);
obj.onfocus =function () {
msg.style.display ='block'
}
}
getFocus('name','nameMsg')();
};
</script>
控制台报错
02.js:9 Uncaught TypeError: getFocus(...) is not a function
at window.onload (02.js:9)
window.onload @ 02.js:9
解决方案:
去掉getFocus(‘name’,’nameMsg’)();的括号
getFocus('name','nameMsg');
getFocus()可以在后面直接调用执行,按形参传参。
附完整代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#nameMsg{
width: 300px;
height: 200px;
background: #008000;
display: none;
}
</style>
<script type="text/javascript">
window.onload =function () {
function getFocus(obj,msg) {
var obj =document.getElementById(obj);
var msg =document.getElementById(msg);
obj.onfocus =function () {
msg.style.display ='block'
}
}
getFocus('name','nameMsg');
};
</script>
</head>
<body>
<input type="text" id="name"/>
<div id="nameMsg"></div>
</body>
</html>