为了账号安全,请及时绑定邮箱和手机立即绑定

如何将全局“ $”的值更改为返回jQuery实例的自定义函数?

如何将全局“ $”的值更改为返回jQuery实例的自定义函数?

FFIVE 2021-04-06 17:19:38
在开始之前,我想说明一下,我不想以任何方式修改jQuery库,我只想$用返回jQuery实例的自定义函数替换global的值。换句话说,我希望$全局不等于jQuery,并在完成其他(非jQuery)操作后返回jQuery实例。如何在不破坏或修改jQuery库的情况下做到这一点?例如,更改$函数,使其使用常规函数声明在返回jQuery实例之前将每个选择器记录到控制台,如下所示:function $(selector) {  console.log(selector);  return jQuery(selector);}导致大量错误,例如x is undefined或y is used out of scope引发错误。经过一些研究后,我尝试$.noConflict(true)在console.log函数调用之后放置一个,如下所示:function $(selector) {  console.log(selector);  $.noConflict();  return jQuery(selector);}我得到的错误比以前少了,但仍然无法按预期工作。为了使我的代码正常工作,我需要更改什么?
查看完整描述

3 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

您可以通过创建对原始值的引用,然后在以后使用的方式来做到这一点,就像这样...


var _$ = $;


function $(selector) {

    console.log(selector);

    return _$(selector);

}

如果您想稍后将所有内容恢复到正常状态,则可以像这样重新引用存储的值...


$ = _$;

注意:下划线只是我的命名约定。您可以根据需要调用引用变量。


查看完整回答
反对 回复 2021-04-22
  • 3 回答
  • 0 关注
  • 137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信