2008-11-07 130 views

回答

17

如果您使用的是Firefox,你可以用的GreaseMonkey做到這一點。 (https://addons.mozilla.org/en-US/firefox/addon/748

GM是一個將腳本應用到您訪問的部分或全部網頁的框架。我有通用汽車腳本禁用谷歌分析下載(因爲他們放慢速度),並禁用谷歌結果頁上的谷歌點擊跟蹤(因爲它困擾我,他們這樣做)。

這裏是我的谷歌單擊禁用腳本:

// ==UserScript== 
// @name   Google Clk 
// @namespace  googleclk 
// @description Disable Google click tracking 
// @include  http://*google.com/* 
// ==/UserScript== 
// Override google's clk() function, which reports all clicks back to google 
unsafeWindow.clk = function(url) {} // { alert(url); } // I use this to test. 

這樣做使用XMLHttpRequest(和其他功能)類似的東西,你可以有效地禁用它們。當然,你可以通過這樣做徹底打破頁面,但你已經知道這一點。

+0

手冊滴注指令:http://wiki.greasespot.net/Greasemonkey_Manual:Installing_Scripts – user956584 2012-12-09 19:33:13

+1

Chrome專用的等效擴展名是[Tampermonkey](https://chrome.google.com/webstore/detail/ tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo) – 2014-06-19 08:01:58

-1

號AJAX只是一個特定的JavaScript的使用。

如果您可以阻止特定功能回撥到服務器,您可能可以這樣做,但您可能需要編輯您的瀏覽器。

我假設你想從客戶端做到這一點...你可以列出一些更具體的目標是什麼?預期的結果是什麼?

4

AJAX是簡單的Javascript了XMLHttpRequest函數的用法。根據您的瀏覽器,您可以通過安全設置鎖定對此功能的訪問權限。 至少在Firefox中,您可以通過使用自定義擴展來禁用它。

0

沒有比你可以禁用任何其他功能更多 - 可能會發現一些可能會干擾或破壞JavaScript的雜湊或黑客,但我們希望不要找到這樣的漏洞。

我會在黑暗中進行狂野的刺探,並猜測您試圖阻止某些類型的不可信用戶輸入中的Ajax?在這種情況下,最好的辦法是避免通過提及Ajax來過多指定搜索參數,而是搜索'sanitize javascript','user javascript safe'......這樣的事情。

6

可以更換瀏覽器的工具,自己什麼也不做,使AJAX(XMLHttpRequest對象)。

XMLHttpRequest = function(){} 
XMLHttpRequest.prototype = { 
    open: function(){}, 
    send: function(){} 
} 

確保您的替換代碼在任何AJAX調用之前執行。

這適用於任何通過XMLHttpRequest對象實現AJAX但不適用於IE的瀏覽器。對於IE,如果可能的話,你可能必須重載CreateObject()函數...

0

除了Firefox的建議,你可以在IE中做它作爲禁用ActiveX的副作用。同樣在IE7 +上,你必須禁用'Native XMLHttpRequest'選項。

2

這是已經被回答的問題一晚發表評論,但對於人們從谷歌進入的好處:

隨着Tab Permissions Firefox擴展,你可以爲特定的標籤禁用JavaScript的(而不是通過右鍵單擊上下文菜單,可以在全局範圍內使用所有選項卡)我配置了「權限」菜單項以切換「重定向」和「JavaScript」,因此如果我偶然發現惱人的刷新和AJAX頁面,我可以快速輕鬆地關閉不當標籤的帶寬活動,而不會影響JavaScript在我的其他公開標籤上。

相關問題