分享一则JavaScript滚动条插件源码

2020-05-23 06:21:34易采站长站整理

        var cloneObj = dom.cloneNode(true);
        scrollObj.className = ‘rollDiv’;
        scrollObj.appendChild(cloneObj);
        //替换页面上当前对象
        dom.parentNode.replaceChild(scrollObj, dom);
        return new linkFlyScroll.prototype.init(scrollObj, options ? options : {});
    };
    linkFlyScroll.prototype.init = function (dom, options) {
        /// <summary>
        ///     1: 本对象才是真正意义上工作的对象,特殊的工作方式是因为可能存在linkFlyScroll的静态调用和实例化调用
        ///         1.1 – init(dom,options) – 在指定的dom上生成滚动条对象
        /// </summary>
        /// <param name=”dom” type=”element”>
        ///     dom对象
        /// </param>
        /// <param name=”options” type=”Json”>
        ///     自定义配置该对象的工作模型,有如下选项:
        ///       [可选]auto(Boolean):当内容并未达到容器的高度的时候,是否自动隐藏滚动条,默认为true(是)
        ///       [可选]height(Int Or String):默认单位为px,可以为int和String.值为auto则默认采用css的高度
        ///       [可选]width(Int Or String):默认单位为px,可以为int和String.值为auto则默认采用css的宽度
        /// </param>
        /// <returns type=”linkFlyScroll” />
        /*
        * 本对象包含以下属性:
        * isDrag:是否正在拖拽滚动条
        * startTop:(工作中)滚动条开始滚动位置
        * endTop:(工作中)滚动条结束滚动位置
        * topLimit:滚动条顶部极限位置
        * bottomLimit:滚动条底部极限位置