unsafeWindow
有一个针对不支持它的浏览器调用的 API 对象的变通方法(通过此人的 github)
var unsafeWindow = (function() {
var e1 = document.createElement('p')
e1.setAttribute('onclick', 'return window;');
return e1.onclick();
})();
// If the current document uses a JavaScript library, you can use it in
// your user script like this:
console.log(unsafeWindow.jQuery);
如果unsafeWindow
是一个对象(或者在这种情况下是一个旨在模仿对象的函数),它怎么能像这样使用$ = unsafeWindow.jQuery
?我知道这是您将函数映射到$
而不是$
简单的 jQuery 别名的方式,但我只是对为什么感到困惑,因为我认为jQuery
它本身是一个对象,并且在这里被调用,就像一个方法一样。
编辑:感谢您的回答,我希望我能“勾选”你们所有人,感谢您的帮助!