首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当点击它的外部时,滑动回来

当点击它的外部时,滑动回来
EN

Stack Overflow用户
提问于 2013-08-09 13:35:12
回答 3查看 57关注 0票数 0

嗨,我想有我的侧滑块按钮,以顺利滑回位置,如果用户点击外部。

如果你想检查它,这里是它的小提琴

到目前为止,当您单击它的外部时,它不会返回位置。

JS

代码语言:javascript
复制
$(document).ready(function () {
    $('#slideleft .mybutton').click(function () {
        var $lefty = $(this).parent();
        $lefty.animate({
            left: parseInt($lefty.css('left'), 10) == 0 ? -$lefty.outerWidth() + 31 : 0
        });
    });
});
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-08-09 13:40:08

请试用以下方法:

代码语言:javascript
复制
$(document).mouseup(function (e) {
        var $lefty = $('#slideleft .mybutton').parent();
        var container = $("#slideleft");
        if (parseInt($lefty.css('left')) == 0) if (container.has(e.target).length === 0) {
            animate();
        }
    });

这是一个有用的小提琴:

JSFiddle

票数 1
EN

Stack Overflow用户

发布于 2013-08-09 13:41:52

通过使用一些event.target技巧,您可以看到以下内容:

代码语言:javascript
复制
$(document).on('click', function (event) {
    if (event.target !== $('#slideleft .mybutton')[0]) {
        $('#slideleft .mybutton').hide(); //or slide however you want to.
    }
});

如果您注意到这实际上比较了实际的HTML对象而不是jQuery对象。这是因为.target给出了单击内容的实际HTML。

票数 1
EN

Stack Overflow用户

发布于 2013-08-09 13:45:44

添加这一功能可以:

代码语言:javascript
复制
$(document).click(function () {
    var $lefty = $('#slideleft .mybutton').parent();
    if(parseInt($lefty.css('left'), 10) == 0){
    $lefty.animate({
        left: -$lefty.outerWidth() + 31
    });
    }
});

这是小提琴

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18147923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档