1

我经常在我从公司的媒体中心加载的代码中看到 jQuery 在控制台中通常不可用。(否$jQuery

但有时,对于那些附加了 jQuery 的元素,它有一个很长的数字。

jQuery18306575689211022109_1378907534666

这样做的目的是什么?安全?

此外,jQuery 有时可以直接在控制台中使用,但仅限于上述数字。因此,我无法在控制台中调试我的应用程序,我需要使用 jQuery 进行查询。

然而,在 JavaScript 代码中,jQuery 被完美地用作$jQuery. 所以我应用了一个断点并导出为window.jQuery = jQuery.

这是调试应用程序的正确方法,何时jQuery被混淆?

更新

例如,检查应用程序调用的这个URL 。似乎 URL 知道附加到 jQuery 的数字是多少。调试时如何知道相同的数字?有什么灯亮是怎么回事?

4

2 回答 2

5

它是由 jQuery 自动生成的回调 id。请参阅. _jsonpCallback

最好让 jQuery 生成一个唯一的名称,因为这样可以更轻松地管理请求并提供回调和错误处理。

于 2013-09-11T14:10:40.777 回答
0

您似乎混淆了两个不同的变量。您可以在此网站上进行快速测试:http ://www.jquery4u.com/function-demos/jsonp/#demo 。单击“运行演示”,打开 Chrome 的控制台,输入“jQuery”以检索回调的名称,然后执行以下简单比较:

jQuery16409391013463027775_1379048051365 === jQuery // false

也就是说,在您的情况下名为“$”和“jQuery”的变量不可用的事实可能是由于特定的实现。一种可能是使用jQuery.noConflict()它允许自定义用作对 jQuery 的引用的名称,或者从全局范围 ( window) 中完全删除对 j​​Query 的所有引用,因此无法在控制台中访问它。

于 2013-09-13T05:21:14.880 回答