2013-04-10 59 views
0

我试图将一些生成的元素定期滑入容器中。我试图使用jQuery的.animate()。将元素滑入容器

我直到现在:

<div id="mainContainer"> 
    </div> 

<div id="photoContainer" class="photocontclass" style="display:none"> 
     <img id="image" src="@Url.Action("Photo_Read", new { Id = 1})" /> 
    </div> 

<script> 
    var photoId = 2; 

    $(document).ready(function() { 
     setInterval(function() { getPhoto() }, 3000); 
    }); 

    function getPhoto() { 
     $("#photoContainer #image").attr("src", '@Url.Action("Photo_Read")' + '/' + photoId); 
     var $new = $('#photoContainer').clone().attr("id", "photoContainer" + photoId); 
     $('#timelineContainer').prepend($new); 
     $new.show('slow'); 
     // do animation with animate... 
     $new.animate({ 
      left:'-50%' // which properties should I have? 
     }, 2000, "swing", function() { 
      $(this).remove(); 
     }); 
     photoId++; 
    } </script> 

<style> 

.photocontclass { 
    display:inline; 
    margin:10px; 
    background-color:white; 
    padding:5px; 
    position:absolute; 
} 

#timelineContainer { 
    background-color:grey; 
    height:200px; 
    width:100%; 
    margin:10px; 
    padding:10px; 
} 

</style> 

$("#photoContainer")应该从容器的右边进来,并在左侧出来......之后,它应该被删除...

我有些疑惑:

  • 我应该在mainContainer,并在photoContainer哪个CSS属性(位置,左,等等)?
  • 我应该将photoContainer放在mainContainer的内部还是外部?
  • 哪些属性应该在动画方法中有?
+0

可能的重复项:http://stackoverflow.com/q/15063125/86072。这个其他问题是否回答你的问题? – LeGEC 2013-04-10 10:37:47

回答

1

你会在JSFIDDLE找到一些答案。有一个简单的例子,你想要做什么。

<div id="mainContainer"> 
<div id="photoContainer" class="photocontclass"> 
    <img id="image" src="@Url.Action("Photo_Read", new { Id = 1})" /> 
</div> 
</div> 

点击红色边框格。在CSS中,声明一个带位置的div非常重要:相对于将div移动到要移动的div。位置:绝对和溢出:移动div的隐藏是mantadory。移动后,您可以隐藏或移除div。 我不确切知道时间轴容器需要什么吗?