1. 程式人生 > >一個基礎的問題 多個$(function(){})裏面的函數 為什麽在下一個$(function(){})裏沒法執行。

一個基礎的問題 多個$(function(){})裏面的函數 為什麽在下一個$(function(){})裏沒法執行。

自己 type set pan span console ole 函數 itl

先看下例子

<!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>

一個基礎的問題 多個$(function(){})裏面的函數 為什麽在下一個$(function(){})裏沒法執行。