Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jqueryanimate()问题_Javascript_Jquery_Css - Fatal编程技术网

Javascript jqueryanimate()问题

Javascript jqueryanimate()问题,javascript,jquery,css,Javascript,Jquery,Css,我已经创建了一个jquery动画,当您单击其中一个按钮时,隐藏的div将从左侧:-650px至左侧:0px但是我注意到当你点击另一个按钮显示另一个隐藏的div时,前一个隐藏的div并没有回到它原来的位置left:-650px停留在左侧:0;有人知道我需要添加什么来实现这个 HTML: 删除左侧“-650px;”上“px”后面的分号 只应左:'-650px'除了修复css和removeClass问题之外,您还可以尝试简化此操作。如果不将事件处理程序绑定到这些ID中的每一个,可能会让人头疼,因为它们

我已经创建了一个jquery动画,当您单击其中一个按钮时,隐藏的div将从
左侧:-650px至<代码>左侧:0px但是我注意到当你点击另一个按钮显示另一个隐藏的div时,前一个隐藏的div并没有回到它原来的位置
left:-650px停留在左侧:0;有人知道我需要添加什么来实现这个

HTML:


删除
左侧“-650px;”上“px”后面的分号


只应
左:'-650px'

除了修复css和removeClass问题之外,您还可以尝试简化此操作。如果不将事件处理程序绑定到这些ID中的每一个,可能会让人头疼,因为它们都做相同的事情。您可以向锚定标记添加数据属性,即
data target=“#three bck”
,并选择要设置动画的锚定标记。它可以全部放在一个事件处理程序中

HTML:


哦,我明白了。这是因为正在调用.removeClass并在动画刚刚开始之前删除display:block。请停止滥用[html5]和[css3]标记。谢谢,伙计,我对Jquery还是很陌生,所以现在我正在扩充我的代码
<div id="wrapper">
    <div class="top-block">
        <ul>
            <li><a id="one" href="#" class="proBtn">block</a>
            </li>
            <li><a id="two" href="#" class="proBtn">test</a>
            </li>
            <li><a id="three" href="#" class="proBtn">test</a>
            </li>
            <li><a id="four" href="#" class="proBtn">Lists</a>
            </li>
            <li><a href="#" class="proBtn">hello</a>
            </li>
            <li><a href="#" class="proBtn">test</a>
            </li>
        </ul>
        <!-- HOME SECTION -->
        <div id="one-bck" class="mid-block fadeInLeft" style="background:green;"></div>
        <div id="two-bck" class="mid-block fadeInLeft" style="background:red;"></div>
        <div id="three-bck" class="mid-block fadeInLeft"></div>
        <div id="four-bck" class="mid-block fadeInLeft"></div>
    </div>
</div>
$(document).ready(function () {
    $('.proBtn').click(function () {
        $('li').removeClass('active');
        $('li a').removeClass('blue');
        $(this).parent("li").addClass('active');
        $(this).addClass('blue');
    });

    $('#one').click(function () {
        $('#two-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#three-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#four-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#one-bck').addClass('animated').animate({
            left: '0px',
            opacity: 1
        }, 500);
    });

    $('#two').click(function () {
        $('#one-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#three-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#four-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 1500).removeClass('animated');
        $('#two-bck').addClass('animated').animate({
            left: '0px',
            opacity: 1
        }, 500);;
    });

    $('#three').click(function () {
        $('#one-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#two-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#four-bck').animate({
            left: '-650px;',
            opacity: 0
        }, 500).removeClass('animated');
        $('#three-bck').addClass('animated').animate({
            left: '-650px;',
            opacity: 0
        }, 500);
    });

});
      <ul>
        <li><a id="one" href="#" class="proBtn" data-target="#one-bck">block</a>

        </li>
        <li><a id="two" href="#" class="proBtn" data-target="#two-bck">test</a>

        </li>
        <li><a id="three" href="#" class="proBtn" data-target="#three-bck">test</a>

        </li>
        <li><a id="four" href="#" class="proBtn" data-target="#four-bck">Lists</a>

        </li>
        <li><a href="#" class="proBtn">hello</a>

        </li>
        <li><a href="#" class="proBtn">test</a>

        </li>
    </ul>
$(document).ready(function () {
    $('.proBtn').click(function () {
        $('li').removeClass('active').find('a').removeClass('blue'); //chain it
        var $this = $(this); //cache this first
        $this.addClass('blue').closest("li").addClass('active');

        $('.mid-block.animated').animate({ //start animate for reverse in case if there is anything already selected
            left: '-650px',
            opacity: 0
        }, 500, function(){
           $(this).removeClass('animated'); //once done remove its class
        }).promise().done(function () { //once this is done start animating your target by selecting the target element from its own data attribute
            $($this.data('target')).addClass('animated').stop(true, true).animate({
                left: '0px',
                opacity: 1
            }, 500);
        });
    });
});