jQuery的使用与效果追加(jQuery using append with effects)

2019-07-20 22:55发布

如何使用.append()与像效果show('slow')

有上影响append似乎并没有在所有的工作,并给予同样的结果为正常show() 没有过渡,没有动画。

我怎样才能添加一个DIV到另一个,并且有一个slideDownshow('slow')它的效果呢?

Answer 1:

在附加有效果不会起作用,因为该浏览器显示的内容是只要DIV附加更新。 因此,结合马克B的和Steerpike的答案:

风格,你要追加为隐藏,然后实际追加的div。 您可以在线或外部CSS脚本做到这一点,或者只是创建DIV作为

<div id="new_div" style="display: none;"> ... </div>

然后你可以链效果,你的append( 演示 ):

$('#new_div').appendTo('#original_div').show('slow');

或( 演示 ):

var $new = $('#new_div');
$('#original_div').append($new);
$new.show('slow');


Answer 2:

其实质是这样的:

  1. 你叫“追加”父
  2. 但你想称之为“秀”的新的子

这对我的作品:

var new_item = $('<p>hello</p>').hide();
parent.append(new_item);
new_item.show('normal');

要么:

$('<p>hello</p>').hide().appendTo(parent).show('normal');


Answer 3:

与输入数据的工作(就像从一个Ajax调用)时,另一种方法:

var new_div = $(data).hide();
$('#old_div').append(new_div);
new_div.slideDown();


Answer 4:

就像是:

$('#test').append('<div id="newdiv">Hello</div>').hide().show('slow');

应该这样做?

编辑:对不起,错误代码,把马特的建议,在船上过。



Answer 5:

当您将追加到div, 隐藏它与参数表明它 "slow"

$("#img_container").append(first_div).hide().show('slow');


Answer 6:

设置附加DIV要通过CSS最初是隐藏的visibility:hidden



Answer 7:

我需要一个类似的一种解决方案,希望在如Facebook墙上添加数据,发布的时候,使用prepend()添加在顶部的最新帖子,想到的可能是对别人有用的..

$("#statusupdate").submit( function () {    
          $.post(
           'ajax.php',
            $(this).serialize(),
            function(data){

                $("#box").prepend($(data).fadeIn('slow'));                  
                $("#status").val('');
            }
          );
           event.preventDefault();   
        });   

在ajax.php的代码是

if (isset($_POST))
{

    $feed = $_POST['feed'];
    echo "<p id=\"result\" style=\"width:200px;height:50px;background-color:lightgray;display:none;\">$feed</p>";


}


Answer 8:

你为什么不干脆躲,追加,然后显示,如下所示:

<div id="parent1" style="  width: 300px; height: 300px; background-color: yellow;">
    <div id="child" style=" width: 100px; height: 100px; background-color: red;"></div>
</div>


<div id="parent2" style="  width: 300px; height: 300px; background-color: green;">
</div>

<input id="mybutton" type="button" value="move">

<script>
    $("#mybutton").click(function(){
        $('#child').hide(1000, function(){
            $('#parent2').append($('#child'));
            $('#child').show(1000);
        });

    });
</script>


Answer 9:

这是可能的,如果你用动画展现光滑。 在风格上,只需加上“动画:显示1秒”,并在关键帧整机外观discribe。



Answer 10:

在我的情况:

$("div.which-stores-content").append("<div class="content">Content</div>);
$("div.content").hide().show("fast");

你可以用知名度调整你的CSS:隐藏 - >可见性:可见,调整转换等转变:能见度1.0秒;



文章来源: jQuery using append with effects