jQuery 如何完成命令链接?

2023-12-25

我认为自己(充其量)是一个中级 JavaScript 人员……当然……我想了解一些事情是如何完成的,这样我就可以编写更好的代码。因此,我一直在研究 jQuery 的底层,试图更多地了解它是如何完成某些事情的。

例如:
jQuery 通过执行以下操作来处理 IE 和 Opera 按名称而不是 ID 返回项目的情况:

// HANDLE: $("#id")
else 
{
    var elem = document.getElementById( match[3] );

    // Handle the case where IE and Opera return items
    // by name instead of ID
    if ( elem && elem.id != match[3] )
        return jQuery().find( selector );

    // Otherwise, we inject the element directly into the jQuery object
    var ret = jQuery( elem || [] )
    ret.context = document;
    ret.selector = selector;

    return ret;
}

...好吧,这很容易!

但是,一行典型的 jQuery 代码将一系列命令链接在一起:

$('#someElementId').fadeIn().css({ ...Some CSS Properties ... });

现在......我“认为”链接部分在以下区域处理:

jQuery.extend = jQuery.fn.extend = function() { ... };

我正在梳理这个领域......我明白了如何single命令已处理...但我真的不知道在哪里或如何处理命令链被管理。所以我显然错过了一些东西。

所以我的问题是:

  1. jQuery 如何实现选择器链接?

上的所有方法jQuery对象将返回一个jQuery目的。

在此特定示例中,您可以看到它们正在创建jQuery().find( selector ) and jQuery( elem || [] )

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery 如何完成命令链接? 的相关文章

随机推荐