我正在尝试理解jQuery,但是我对语法看起来很陌生而受到阻碍.我甚至不理解常规JavaScript解析器如何解析它!我可以阅读示例代码,我将从附带的材料中了解它正在做什么,但我不明白如何.
我知道这$只是jQuery的别名,但这并没有回答这个问题.使用经典的jQuery函数来延迟事物直到页面完全加载:
$(document).ready(function() {
...
});
Run Code Online (Sandbox Code Playgroud)
或jQuery选择器,选择pDOM中的所有元素并应用CSS规则:
$('p').css('color', 'blue');
Run Code Online (Sandbox Code Playgroud)
所以......莫名其妙地document和'p'被认可的钥匙,并用适当的值相关联的,对不对?除了它似乎不是真的,因为然后jQuery必须预先计算它将要返回的任何可能的键返回的结果,包括jQuery可能无法知道的元素id!那它究竟是如何起作用的呢?
(编辑以修复描述代码时的错误)
答案比你想象的要简单.这$确实是jQuery库的别名......它是作为单个函数实现的.当您看到如下所示的代码时:
$(document).ready(function() {
...
});
Run Code Online (Sandbox Code Playgroud)
你看到的是:
$正在调用jQuery函数()...document......ready方法,被称为...当我第一次碰到它时,我遇到了麻烦.我知道在JavaScript中,函数是第一类对象(这就是为什么你可以传递一个作为参数),但不知何故,这并没有让我明白那些显然是一个大而复杂的对象(即jQuery) library)也可能是一个函数.
事实上,这两者都是.它是一个函数,它也是一个具有自己属性的对象,包括函数.这就是为什么有时您会看到如下代码:
$.getJSON('http://www.foo.com/search?q=....
Run Code Online (Sandbox Code Playgroud)
在我们之前的代码中,$是我们调用的函数.在这段代码中,$是我们调用的函数所在的对象getJSON.
| 归档时间: |
|
| 查看次数: |
110 次 |
| 最近记录: |