如何创建如下所示的 ExpandCollapse.js 作为它自己的模块和独立的 JS文件?我想从页面上加载的单独文件中调用它。只是我希望 javascript 文件采用面向对象的方式。希望有人可以引导我完成整个过程。
YUI().use('anim', function (Y) {
var onClick = function (e) {
var expandAnswer = e.currentTarget.next('.expand');
e.currentTarget.toggleClass('open');
var content = new Y.Anim({
node: expandAnswer,
from: {
height: 1
},
to: {
height: function (node) { // dynamic in case of change
return node.get('scrollHeight'); // get expanded height
}
},
easing: Y.Easing.easeOut,
duration: 0.5
}).set('reverse', !e.currentTarget.hasClass('open')).run();
};
Y.all('.questions_subdiv > div ').on('click', onClick);});