javascript - 为什么这个 Vidyard 脚本将 $ 更改为 $$?

标签 javascript jquery

此脚本包含:e.$$=e.$=void,因此在控制台中输入 $ 将返回 undefined
https://assets.vidyard.com/play/js/player-66763f3813e2458d4b62232f78453b05.js

Vidyard 是一项网络视频技术服务。真正的商业实体愿意修改 jQuery 对象的重要部分,这似乎很奇怪。 $$ 成为新的 jQuery 对象,但这可能与依赖 jQuery 的外部脚本完全不兼容。

我会在 Vidyard 论坛上提出这个问题,但他们似乎没有。

最佳答案

正如 Rory 提到的,好的插件将在自己的范围内编写。这看起来像这样。

(function($) {
  //your code here
}(jQuery));

它基本上是一个带有参数 $ 的函数。该函数会立即调用,并使用 jQuery 变量作为包含 jQuery 对象的参数(通常与 $ 相同)。您可以对代码执行相同的操作,这样您仍然可以使用 $ 而不是 $$

如果您有依赖于 $ 的外部脚本,您也可以在这样的范围内使用它们的代码。

关于javascript - 为什么这个 Vidyard 脚本将 $ 更改为 $$?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52314578/

相关文章:

javascript - Select2 多选重复值

javascript - 将字符串转换为时间 JavaScript (h :m)

javascript - 单击确认添加复选框长度

javascript - 如何在模态中刷新页面

javascript - 制作多选表格

javascript - jQuery scrollTop 静态元素上的目标引用发生变化

javascript - 使用 if 语句并有多个成功案例

javascript - 对话框函数错误无效函数

javascript - 混合 canvas/DIV 方法的 JS 分层树示例

javascript - tinytable如何按降序而不是升序对表进行排序