Jquery 主体点击停止切换

标签 jquery click toggle

我有一个 div,需要在单击按钮时向上/向下动画,并且,如果它已向下动画(或打开),则单击主体时它必须关闭。这工作正常,但是如果我使用主体将其关闭,切换按钮在第一次单击时将不再起作用。我希望有一个简单的解决方案,非常感谢任何帮助,谢谢!

$('#button').toggle(function(event){
        event.preventDefault();
        $('#box').animate({top: '0'}, 300);
    },function(event){  
        event.preventDefault();    
        $('#box').animate({top: '-100px'}, 300);
    });

    $("body").click(function(event) {
        if ($(event.target).closest('#box').length === 0) {
            $('#box').animate({top: '-100px'}, 300);
        }
    });

http://jsfiddle.net/user1688604/ve7VA/1/

最佳答案

toggle 事件方法已弃用,您可以使用 click 方法代替。使用 click and 和条件语句可以解决该问题。

$('#button').click(function (event) {
    event.preventDefault();
    var $box = $('#box'),
        val = $box.css('top') === '0px' ? '-100px' : '0px';
    $box.stop().animate({
        top: val
    }, 300);
});

http://jsfiddle.net/Wdjys/

关于Jquery 主体点击停止切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15507139/

相关文章:

通过ajax动态添加内容后Javascript功能不起作用

jQuery 点击添加类

javascript - JQuery toggle() 在 1.9.1 中不起作用

javascript - 使用一个代码在多个 div 上切换“阅读更多”和“阅读更少”

javascript - JQuery 显示/隐藏或切换图像 +/-

javascript - 无法使用正确的位置或原始 x、y 裁剪图像。

javascript - 在流程图线工具提示中显示信息时出错

javascript - jquery .each() 循环

jquery - 动态添加到 DOM 的元素的单击事件

带有点击事件的 jQuery 下拉导航