先看下例子
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="jquery-1.10.2_d88366fd.js"></script>
</head>
<body>
<script>
$(function(){
function console1(){
console.log('js1:console1');
}
})
</script>
<script>
$(function(){
console1();
})
</script>
</body>
</html>
這樣寫 console1函數無法執行報錯,說沒找到console1函數。
想了半天,原來每個$(function(){})都是一個函數,函數都有自己的作用域,匿名函數相當於私有的函數,要把匿名函數改成 全局函數就可以在下面用了。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="jquery-1.10.2_d88366fd.js"></script>
</head>
<body>
<script>
var console1;
$(function(){
console1=function (){
console.log('js1:console1');
}
})
</script>
<script>
$(function(){
console1();
})
</script>
</body>
</html>
