Javascript插件设计模式就像jQuery

有人可以在 javascript中写下一个非常简单的基本示例来概念化(并希望让我理解)jQuery插件设计模式是如何完成的以及它是如何工作的?

我对如何为jQuery创建插件不感兴趣(所以在这里根本没有jQuery代码).
我对一个简单的解释(可能有一些Javascript代码)感兴趣,以解释它是如何完成插件概念的.

Plz不回复我去阅读jQuery代码,我试过,但我太复杂了,否则我不会在这里一个问题.

谢谢!

解决方法

jQuery有一个存储在名为fn的内部对象中的函数库.这些是你可以在每个jQuery对象上调用的.

当你执行$(“div.someClass”)时,你得到一个包含所有< div>的jQuery对象.那个班级的元素.现在你可以做$(“div.someClass”).each(someFunction)将someFunction应用到它们中的每一个.这意味着,each()是存储在fn中的函数之一(在本例中为内置函数).

如果扩展(添加到)内部fn对象,则会自动使用相同的语法提供自定义函数.让我们假设您有一个将所有元​​素记录到控制台的函数,称为log().您可以将此函数附加到$.fn,然后将其用作$(“div.someClass”).log().

附加到fn对象的每个函数都将以这样的方式调用:在函数体内,this关键字将指向您使用的jQuery对象.

通常的做法是在自定义函数的末尾返回它,这样方法链不会破坏:$(“div.someClass”).log().each(someFunction).

有几种方法可以将函数附加到$.fn对象,有些方法比其他对象更安全.一个非常安全的方法是:

jQuery.fn.extend({
  foo: function() {
    this.each( function() { console.log(this.tagName); } );
    return this;
  }
})

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...