首先是第一件事-预期的结果:
https://github.com/akaIDIOT/MooTools-TabPane/blob/master/Source/TabPane.js#L44
他希望参数是元素 id 或实际元素。你如何到达那个元素取决于你。
var myTabPane = new TabPane(document.getElement('.tabs'), {
tabSelector: 'li',
contentSelector: 'p'
});
传递基于类搜索找到的元素.tabs
。
或者,您可以在类上重新实现初始化方法并将该行编写为:
this.container = document.getElement(container);
this.container.getElements(this.options.contentSelector).setStyle('display', 'none');
所以你可以传递一个像选择器一样的jquery:new TabPane('#someid')
或new TabPane('div.someclass')
你可以通过做TabPane.implement({ initialize: fn(){... })
或做一个子类来重构它var myTabs = new Class({extends: TabPane, initialize: fn(){ ... })
。当你扩展时,this.parent()
会在原型之上调用父方法。