8
var scripts  = document.getElementsByTagName("script");
for (var i=scripts.length; i--; ){
   (scripts[i]).parentNode.removeChild(scripts[i]);
}

誰かが私にこの質問をしました、そして私の最初の考えは:いいえ。ただし、style要素を削除すると、ページが自動的に更新され、スタイルが削除されます。これは、ブラウザがcssをフックする方法が原因である可能性があります-CSSはすべてのイベント(マウスの動き、クリック、タイプなど)で更新されることを思い出します。

テストできるコンピューターを使用していないため、スクリプトタグを削除しても、既に作成されている関数は削除されないことを確認したかっただけです。

これはまた、firebug[-like]ユーザーからコードを保護するための良い習慣を考えさせられました。

4

1 に答える 1

9

短い答え、いいえ。

エンジンによって一度評価されたスクリプトは、セッションの残りの間メモリに残ります。コードが含まれていたスクリプトノード全体を削除しても、その事実は変わりません。

于 2012-01-31T16:07:34.277 に答える