首页 > 代码库 > 自定义滚动条笔记(二)

自定义滚动条笔记(二)

可以为模板

 1 (function (win, doc, $) {
 2     function CusScrollBar(options) {
 3         this._init(options);// 初始
 4     }
 5      // 在原型上添加方法
 6     $.extend(CusScrollBar.prototype, {
 7         _init: function () {
 8             console.log("test1");
 9         }
10     })
11     //CusScrollBar.prototype._init = function () {
12     //    console.log("test");
13     //}
14    
15     win.CusScrollBar = CusScrollBar;
16 })(window, document, jQuery);
17 new CusScrollBar();

6、利用.extend()函数在原型上添加属性和方法  CusScrollBar.prototype为目标对象

7.传入一个对象 对象的属性值_init

   这样还回的结果就是在 CusScrollBar.prototype上添加_init方法

 1 (function (win, doc, $) {
 2     function CusScrollBar(options) {
 3         this._init(options);// 初始
 4     }
 5     $.extend(CusScrollBar.prototype, {
 6         _init: function (options) {
 7             var self = this; 
 8             self.options = {
 9                 contSelector: "",   // 滑动内容区选择器
10                 barSelector: "",    // 滑动条选择器
11                 sliderSelector: "", // 滑动块选择器
12                 tabItemSelector: "",// 标签选择器
13             };
14             $.extend(true, self.options, options || {});
15             console.log(self.options.barSelector);
16         }
17     })
18     win.CusScrollBar = CusScrollBar;
19 })(window, document, jQuery);
20 new CusScrollBar({
21     contSelector: ".scroll-cont",   // 滑动内容区选择器(必须)
22     barSelector: ".scroll-bar",    // 滑动条选择器(必须)
23     sliderSelector: ".scroll-slider", // 滑动快选择器
24     tabItemSelector: ".tab-item",      // 标签选择器(必须)
25 });

 

init函数里面初始化一些属性

7、this储存在self变量中 防止this混用

8、指定一些默认的属性 以自变量的形式储存在self options(self.options)属性中

9、此时self.options中的options不是this._init(options)

自定义滚动条笔记(二)