2013-08-01 56 views
2

在我的Chrome控制檯中,我試圖瞭解導致調用某個javascript文件的步驟。 事實上,當我點擊一個輸入文件標籤後從我的計算機中導入一個文件時,會調用一些javascript文件,但我不知道是哪個方法調用它。我如何在調試器(chrome-console)中追蹤它?追溯javascript調用

編輯:

我工作的插件是在這裏:http://blueimp.github.io/jQuery-File-Upload/。當點擊添加文件按鈕,文件load-image.min.js is called(在鉻調試器的網絡部分),我不知道它是如何調用的

+1

右邊有一段顯示了當你在錯誤或斷點處停止時的堆棧跟蹤,是不是你需要的信息? – Barmar

+0

@Barmar不完全,實際上我現在注意到這個文件必須是一些Ajax調用,因爲我在調試器的網絡部分看到它。但我不知道是什麼觸發了這個Ajax調用... – user1611830

+0

它可能使用'.loadScript()'之類的東西。 – Barmar

回答

2

首先,知道當你「調用」JavaScript文件(我認爲你的意思是「導入」),沒有具體的功能固有被觸發。如果您希望在加載時觸發任何函數,則需要在JavaScript文件的全局空間中調用該函數。通常,這是通過創建一個自我調用函數來完成的。例如,該代碼將定義一個名爲「富」函數並調用它時,JavaScript文件被加載:

(function foo() { 
    ... 
})(); 

這也將是可行的:

function foo() { 
    ... 
} 
foo(); 

在Chrome開發人員工具術語(用Ctrl + Shift + J打開),你有幾個選項。您所描述的最接近的是「個人資料」工具。單擊該選項卡,選擇「收集JavaScript CPU配置文件」,然後運行分析器幾節。它將返回一個由你的CPU執行的函數列表以及它們花費的時間。

+0

他問這是怎麼發生的? –

+0

@MESSIAH的確如此。事實上,我現在注意到這個文件必須是一些Ajax調用,因爲我在我的調試器的「網絡」部分看到它 – user1611830

+0

所以你想知道一個特定的腳本可能最終被加載到你的網頁上? –

2

如果您想要捕獲AJAX呼叫,請使用Javascript調試器的XHR斷點部分。點擊+添加斷點,並在提示輸入字符串以匹配URL時輸入load-image