【问题标题】:How to create a mouse drag slider for HTML elements?如何为 HTML 元素创建鼠标拖动滑块?
【发布时间】:2013-06-06 15:08:05
【问题描述】:

我发现的许多滑块插件要么仅单击以查看下一个图像,要么如果它们确实具有鼠标拖动或触摸拖动功能,则仅允许图像。有谁知道为任何 html 元素编写鼠标拖动滑块的插件或可能的方法?我专门使用 SVG,但如果将来有一些东西可以在 div 元素之间滑动,那就太好了。

【问题讨论】:

    标签: javascript jquery html css web-applications


    【解决方案1】:

    HTML:

    <div id="slider">
        <ul>
            <li style="background-color: #F00"></li>
            <li style="background-color: #0F0"></li>
            <li style="background-color: #00F"></li>
        </ul>
    </div>
    

    CSS:

    #slider {
        width: 400px;
        overflow: hidden;
    }
    ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    li {
        width: 400px;
        height: 400px;
        float: left;
    }
    

    JS:

    $(function() {
        var slides = $('#slider ul').children().length;
        var slideWidth = $('#slider').width();
        var min = 0;
        var max = -((slides - 1) * slideWidth);
    
        $("#slider ul").width(slides*slideWidth).draggable({
            axis: 'x',
            drag: function (event, ui) {
            if (ui.position.left > min) ui.position.left = min;
                if (ui.position.left < max) ui.position.left = max;
            }
        });
    });
    

    jsFiddle code

    【讨论】:

    • 我将如何在幻灯片功能中实现停止,其中一个人拖动大约一半并且幻灯片类型卡入到位。
    猜你喜欢
    • 2019-11-04
    • 1970-01-01
    • 2014-12-20
    • 1970-01-01
    • 1970-01-01
    • 2020-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多