惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

爱范儿
爱范儿
H
Help Net Security
Jina AI
Jina AI
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
博客园 - 叶小钗
Y
Y Combinator Blog
罗磊的独立博客
大猫的无限游戏
大猫的无限游戏
WordPress大学
WordPress大学
C
Check Point Blog
Recent Announcements
Recent Announcements
IT之家
IT之家
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
美团技术团队
云风的 BLOG
云风的 BLOG
雷峰网
雷峰网
H
Hackread – Cybersecurity News, Data Breaches, AI and More
S
SegmentFault 最新的问题
MyScale Blog
MyScale Blog
Apple Machine Learning Research
Apple Machine Learning Research
Microsoft Azure Blog
Microsoft Azure Blog
V
Visual Studio Blog
B
Blog

jQuery

油猴脚本能拦截$(document).ready 吗? jquery 有什么树形可编辑表格的插件吗? Jquery Datatable 前端分页 Checkbox 跨页全选的问题 想提取 jQuery 中的一些函数单独使用,有什么好方法吗 有没有小的简单的 jquery 路由 关于 JQuery.load(html)加载 html,导致父 html 的$.fn 以及$.unbind 失效的问题 使用 jquery.validate 插件对动态新增的表单进行校验 <script id="aaa" src="xxx.com/foo.js"></script> 用 $.getScript(...) 可以把 id="aaa" 一起设置进去吗? 为什么我的 select 的 change 事件会失效? 初学者在做做登陆界面使用 jQuery ajax()方法时直接出现 error, XMLHttpRequest.status=0,XMLHttpRequest.readyState=0,textStatus=error 请教一个 jquery contextmenu 问题,不同事件源怎么合到一个菜单里 jQuery.extend 在深复制时,为什么需要判断 isPlainOjbect?(不是问 isPlainOjbect 方法的原理) jquery 通过 ajax 返回新的 url 给前端重定向算前后端分离吗? 前端 websocket 实时接收到音频流数据,如何在 web 端实时播放 scrollTop()引发的一个操作问题 jQuery 选择特定尺寸图片问题 如何在提交表单后获取到动态添加的 inpu 的值 pdfObject 怎么监听进度 能帮我找找这个页面的细节 和 尺寸是那个 ajax 和 url 加载的吗? 问个 Jquery 的选择元素的问题 jQuery UI dialog 有熟悉的么,我想问个问题 实现滚动条离顶端一定距离之后异步加载广告 求指点 Refused to set unsafe header "cookie" 问个 JQ 的选择节点的问题 jquery 如何实现点击 p( class=‘aa’,没有 id)而选中 p 里面的文字? 可以用 jquery 模拟键盘按键吗? 外行请教京东 618 寻金记是怎么实现的? 请教 jquery 跟换图片地址后展示的问题 function 返回 ajax 结果 Jquery 在移动端如何让返回能够不刷新页面?
浮动 [电梯] 或 [回到顶部] 小插件: iElevator.js
zhansingsong · 2016-06-27 · via jQuery

iElevator.js是一个 jquery 小插件,使用简单,兼容 IE6 ,支持 UMD 和 3 种配置方式,比锚点更灵活。

Default Options
var _defaults = {
        floors: null,
        btns: null,
        backtop: null,
        selected: '',
        sticky: -1,
        visible: {
            isHide: 'no',
            numShow: 0
        },
        speed: 400,
        show: function(me) {
            me.element.show();
        },
        hide: function(me) {
            me.element.hide();
        }
  • floors:页面中 floor 模块的引用
  • btns: 焦点图的引用
  • backtop: 回到顶部按钮的引用
  • selected: 焦点图在进行滚动或单击时的选中样式
  • visible: 用于控制 [电梯] 的显示与隐藏,当 srollTop 值大于numShow时,显示 [电梯] ,反之则隐藏
  • speed: 控制滑条的滚动速度
  • show: 可以重写该函数,来定制elevator的显示方式
  • hide: 可以重写该函数,来定制elevator的隐藏方式

安装

npm install ielevator || bower install ielevator

使用

1. back to top [回到顶部] 单击我看 Demo 效果

HTML:

    <div class="elevator elevator-backtop" id="backtop" >
        <a href="javascript:;" class="js-backtop">TOP</a>
    </div>

Javascript:

    $('#backtop').ielevator({
        backtop: $('#backtop .js-backtop')
    });

只需获取backtop引用即可,就这么简单!

2. simulate elelvator 单击我看 Demo 效果

HTML structure:

    <div class="elevator" id="elevator" data-elevator-options='{"selected": "custome-selected"}'>
        <ul>
            <li><a href="javascript:;" class="custome-selected js-btn">floor1</a></li>
            <li><a href="javascript:;" class="js-btn">floor2</a></li>
            <li><a href="javascript:;" class="js-btn">floor3</a></li>
            <li><a href="javascript:;" class="js-btn">floor4</a></li>
            <li><a href="javascript:;" class="js-btn">floor5</a></li>
            <li><a href="javascript:;" class="js-btn">floor6</a></li>
            <li><a href="javascript:;" class="js-btn">floor7</a></li>
        </ul>
    </div>

Javascript:

    $('#elevator').ielevator({
        floors: $('.js-floor'),
        btns: $('#elevator .js-btn'),
        selected: 'selected',
        visible: {isHide: 'yes', numShow: 400},
        show: function() {
            $('#elevator').slideDown(400);
        },
        hide: function() {
            $('#elevator').slideUp(400);
        }
    });
注意: data-ielevator-options='{"selected": "custome-selected"} 配置的优先级是最高的

3. simulate elevator + back to top 单击我看 Demo 效果

HTML structure:

    <div class="elevator" id="elevator" data-elevator-options=''>
        <ul>
            <li><a href="javascript:;" class="custome-selected js-btn">floor1</a></li>
            <li><a href="javascript:;" class="js-btn">floor2</a></li>
            <li><a href="javascript:;" class="js-btn">floor3</a></li>
            <li><a href="javascript:;" class="js-btn">floor4</a></li>
            <li><a href="javascript:;" class="js-btn">floor5</a></li>
            <li><a href="javascript:;" class="js-btn">floor6</a></li>
            <li><a href="javascript:;" class="js-btn">floor7</a></li>
            <li><a href="javascript:;" class="js-backtop">TOP</a></li>
        </ul>
    </div>

Javascript:

    $('#elevator').ielevator({
        floors: $('.js-floor'),
        btns: $('#elevator .js-btn'),
        backtop: $('#elevator .js-backtop'),
        selected: 'selected',
        visible: {isHide: 'yes', numShow: 400},
        show: function() {
            $('#elevator').slideDown(400);
        },
        hide: function() {
            $('#elevator').slideUp(400);
        }
    });

4. require.js example 单击我看 Demo 效果

这是一个 require.js 的实例

5. 模拟 segmentfault 文章导航 单击我看 Demo 效果

Javascript:

    // 获取 Markdown 中的标题
    var $demo = $('#demo'),
        $titles = $('h2'),
        $nav = $demo.find('.list'),
        $highlight = $demo.find('.highlight'),
        STR = '';
    // 填充标题
    $titles.each(function(){
        STR += '<li><a>'+ $(this).text() +'</a></li>';
    });
    $nav.html(STR);
    // 调用 ielevator
    $demo.ielevator({
        floors: $titles,
        btns: $('#demo li'),
        sticky: 10,
        selected: $highlight
    });