我们可以通过在线Web代理使用jQuery框架吗?



我用Google CDN在我的网站中包含jQuery:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript"></script>

一切都按预期工作,但是当我尝试使用任何在线网络代理(例如 Zend2 或代理,则无法加载 jQuery。根据包含的jQuery版本和使用的Web代理,当浏览器尝试解析jquery.min(var未定义等)时,我们会在浏览器控制台中收到各种错误消息。

所有使用jQuery的网站,包括jQuery的网站本身,都有同样的问题。例如,尝试通过 Web 代理使用 jQuery UI 演示站点:无法使用 jQuery UI 小部件,请在 Web 控制台中查看所有错误消息。

尝试了几十个代理,我只发现一个能够奇迹般地解析jQuery。

为什么jQuery不适用于大多数这些Web代理?有什么解决方法吗?谢谢!

默认情况下,这两个代理都会删除脚本。jquery.min中没有任何内容.js除了脚本。确保在使用代理之前关闭"删除脚本"选项。

我下载了带有和不带代理的jquery.js(非缩小),并对其进行了差异。它对代码进行了大量更改。其中一些只是语法变化,我认为不应该有任何影响,但有很多这样的:

location = window.location,

成为:

location =  _proxy_jslib_handle(window, 'location', '', 0, 0),

它们都涉及_proxy_jslib_XXX函数,这些函数取代了各种内置的Javascript机制。 我用谷歌搜索了一下,发现它来自CGIProxy,这是大多数代理网站使用的脚本。 也许它所做的更改与jquery不完全兼容。

也许你提出这个问题的正确地方是他的网站。这不是一个真正适合SO的编程问题。

最新更新