2017-04-21 119 views
-2

我有2個問題。
首先,
我在我的頁面有一個腳本標記(不是jQuery,我自己的js文件)。然後,我通過瀏覽器中的apache運行我的頁面,並刪除該標籤,但該頁面仍在工作。爲什麼?我也刪除了所有緩存並且不重新加載頁面。
[在瀏覽器元素窗口中刪除]
二,
當我將兩個腳本標記放在同一個名稱中(一個在我的localhost中,另一個在文件系統中)時會發生什麼?哪一個會工作?
enter image description here刪除腳本標記仍在工作

+0

你是如何刪除標籤的?由來源檢查員?這不會卸載已經運行的代碼。你的第二個問題是什麼「localhost」和「文件系統」? –

+1

如果你有兩個不相關的問題,你應該打開兩個問題... –

+0

@BartekBanachewicz我更新了我的問題。 –

回答

1

瀏覽器從<script>標籤加載代碼後,它被加載到虛擬機並保留在那裏。如果它將一些數據或函數保存到全局變量中,則它們獨立於DOM,就像例如。 window對象。

代碼發送的所有事件偵聽器也會持續這樣的刪除,這意味着JS不會受到您的操作的干擾。腳本運行後,幾乎不可能「關閉」並以通用的方式將其從網頁中刪除。

如果這是您的代碼,並且您只是想停止它的執行,請提供清理方法。 removeEventListener停止瀏覽器調用您的代碼。