2010-12-20 87 views
1

我想知道是否有可能在JavaScript中阻止<script src="unwantedscript.js" type="text/javascript"></script>對象運行?如何防止下載和運行腳本?

我需要使它從來沒有存在過。是否有可以阻止執行腳本的事件(基於src參數)?

我針對Internet Explorer 8,但也歡迎其他瀏覽器的解決方案(儘管它不會幫助我做任何事情;))。

請不要JQuery或其他庫。我用C++編寫了一個IE附加組件,但我可以使用MSHTML的接口來「使用」JavaScript。

回答

1

在IE(MSHTML)中很簡單。您只需404即可獲取unwantedscript.js的HTTP請求。

+0

什麼?我不明白你的答案;)。我不想'unwantedscript.js'。我不想要它做什麼併產生。我只是想讓它消失。 – 2010-12-20 14:44:39

+0

你熟悉HTTP協議嗎? 「未找到404資源」是無法解析的URL的響應代碼。 MSHTML允許您替換HTTP響應。所以,你誘騙MSHTML認爲'unwantedscript.js'的HTTP請求返回錯誤404. Voila沒有更多的腳本。 – MSalters 2010-12-21 09:01:08

+0

「MSHTML允許您替換HTTP響應」如何?你有任何鏈接或可以提供一個示例代碼? – 2010-12-21 16:06:40

0

試圖阻止免費的託管網站廣告?如果你這樣做,你的網站可以被託管公司刪除,所以要小心。

實在是沒有什麼可以做這件事除了敷在有條件的意見

<!--[if IE 5]> 
    <script src="foo.js"></script> 
<![endif]--> 

,但如果它被注入到頁面中,你可能無法包裹。

+0

他正在編寫一個插件/插件,所以即使它被注入,也應該可以阻止它。 – syockit 2010-12-20 15:15:51