2008-11-07 115 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在我的其他公开标签上。

相关问题