我正在尝试构建自己的类似 jquery 的小型库,但在创建这种链接模式时我遇到了非常艰难的时期。基本上,我有一个类,其中包含一堆方法,可以更轻松地操作文档。这是一个例子
function MF(selector){
var DO; // Stands for DocumentObject
this.select = function(selector){
return document.getElementById(selector);
}
if(typeof selector === 'string'){
DO = this.select(selector);
}else if(selector instanceof HTMLElement){
DO = selector;
}
this.children = function children(selector){
return DO.getElementsByClassName(selector);
}
return {
MF: ???
}
}(null);
我的思考可能是错误的,但我发现为了为文档对象( html 元素)提供额外的方法,我需要扩展 HTMLElement 原型或将元素与我的类一起传递。我选择了第二个选项。我只是不知道在我的课堂上要返回什么,以便我可以继续进行链接。就本示例而言,我的目标只是能够编写以下代码行:
MF('someDiv').children('someClass');
在绝望的尝试中,我尝试返回一个MF
默认情况下不应该有实例的新实例,并导致自己陷入无限循环。我真的不知道我应该回到那里。任何帮助是极大的赞赏!