2013-07-05 68 views
4

我已經制作了標誌,並且因爲誤解而刪除了我之前的問題。<script>標籤的全球範圍是什麼?

我正在開發一個經典的asp項目。

比方說,你的代碼中有很多<script></script>標籤。

例如:

線10:<script> ..function 1 definition here..</script>

行200:<script> .. function 2 definition here..</script>

線5000:<script> ..function 3 definition here..</script>

還在行6000:我有試圖調用功能1的另一個標籤。

是否可能不使用* .js文件?

例如:

線6000:

<script> function1(); </script> 

這些腳本不是<head>標籤定義。

我知道它沒有用,但我需要知道有沒有辦法。

希望它現在更清楚!

+1

是的,這是可能的,你爲什麼不測試它? –

+1

我相信如此,因爲您不需要使用之前未生成的信息。 – PiLHA

+0

@dystroy:你能告訴我該怎麼做嗎?我嘗試了很多方法,但沒有運氣。謝謝你的幫助! – curiousBoy

回答

7

腳本標記內的任何內容都會立即運行。如果您在第一個腳本元素中定義了function a(),那麼它會爲您的全局名稱空間添加一個名爲a的函數。稍後在其他腳本元素中執行的任何JavaScript都可以訪問它。

<script type="text/javascript"> 
    function a() { 
     alert('hi'); 
    } 
</script> 

... 

<script type="text/javascript"> 
    a(); 
</script> 
2

是的,這是可能的,假定function1是在全球範圍內(例如,不是在一個包裝函數/自調用功能)。

0

當然這是可能的。你只需要在全局命名空間中定義它。 Here是應該給你一個想法和更好的理解的鏈接。它還包括非常簡單的例子。

+2

鏈接是404 .... – cloudsurfin