jQuery appendTo DIV, а затем анимируйте

Когда я нажимаю кнопку "новый", запускаю действие jQuery:

1.) создайте DIV и «блок» addClass в DIV

2.) добавить к ".container"

3.) анимировать этот DIV в контейнере с непрозрачностью от 0 до 1

Пример JsFiddle

HTML

<div class="panel">
   <button class='new'> + </button>
</div>
<div class="container">
</div>

CSS

.block {
   margin: 0px;
   width: 200px;
   display: inline-block;
   border-right:thin dashed #aaa;
   opacity: 0;
}
.panel {
   position: absolute;
   top: 100px;
   padding: 5px;
   color: #FFF;
   font-size: 15px;
   background: #d30;
   height: 30px;
   cursor:pointer;
}
.container {
   position: absolute;
   top: 145px;
   left: 0px;
}
button{
   font-size: 20px;
   padding: 0px;
}

jQuery

function createChatBox(title) {
   $(" <div />" ).attr("id","block_"+title)
    .addClass("block")
    .html('<div class="title">text1 '+title+'</div>')
    .appendTo($( ".container" , {
        css: {
            display: 'inline-block',
            opacity: 0
        }
    }).animate({ opacity: 1  }) );
}

$(".new").click(function(){
     createChatBox('text2');
 });

person Patrik    schedule 23.04.2012    source источник


Ответы (3)


Вам нужно изменить раздел appendTo на это:

    .appendTo(".container" , {
        css: {
            display: 'inline-block',
            opacity: 0
        }
    }).animate({ opacity: 1  });
person jessica    schedule 23.04.2012

Это то, что вы ищете:< /сильный>

jQuery:

function createChatBox(title) {

    $(" <div />" )
        .attr("id","block_"+title)
        .addClass("block")
        .html('<div class="title">text1 '+title+'</div>')
        .css({
            display: 'inline-block',
            opacity: 0
        })
        .appendTo($( ".container" ))
        .animate({ opacity: 1  });

}

Выход:

введите здесь описание изображения

person Code Maverick    schedule 23.04.2012

Ваш код кажется сломанным, некоторые несоответствующие скобки / {}. Вот исправление, это то, что вы хотите? http://jsfiddle.net/mamadrood/bckHD/1/

person mamadrood    schedule 23.04.2012