2017-04-21 9 views
-2

2つの質問があります。
最初に、
私のページにはスクリプトタグ(jqueryではなく、自分のjsファイル)があります。その後、私はブラウザでApacheを介してページを実行し、そのタグを削除しますが、ページはまだ動作しています。どうして?私はまた、すべてのキャッシュを削除し、ページをリロードしません。
[ブラウザの要素ウィンドウで削除]
次に、
2つのスクリプトタグを同じ名前(ローカルホストに1つ、ファイルシステムにもう1つ)を入れるとどうなりますか?どちらがうまくいくのですか?
enter image description hereスクリプトタグを削除してもまだ動作しています

+0

どのようにタグを削除しましたか?ソースインスペクタによって?既に実行中のコードはアンロードされません。 2番目の質問に「localhost」と「ファイルシステム」とは何ですか? –

+1

2つの非関連の質問がある場合は、2つの質問を開く必要があります。 –

+0

@BartekBanachewicz質問を更新しました。 –

答えて

1

ブラウザは<script>タグからコードをロードした後、VMにロードされてそこに保持されます。いくつかのデータや関数をグローバル変数に保存すると、それらはDOMとは独立しています。 windowオブジェクトです。

コードによって送信されたすべてのイベントリスナーもこのような削除を維持します。これは、JSがあなたの操作によって妨げられないことを意味します。スクリプトが実行された後は、「オフにする」ことはほとんど不可能で、一般的な方法でウェブページから削除することができます。

これがあなたのコードであり、単に実行を停止したいのであれば、例えばコードを使ってクリーンアップメソッドを提供してください。 removeEventListenerを入力すると、ブラウザがコードを呼び出さなくなります。

関連する問題