2010-01-18 50 views
0

我想要做的雲這樣page我如何製作這樣的jQuery動畫?

應該在頭和移動隨機地通過隨機方法 誰,我可以顯示。我用的setTimeout功能,但它不工作好

+1

任何JavaScript動畫教程應該讓你開始。你有什麼實際問題? – Quentin 2010-01-18 14:01:15

+0

settimeout有什麼問題?慢? – PeanutPower 2010-01-18 14:01:58

回答

4

使用的setInterval(對不起,我錯了假設延遲()可能有所幫助)

嘗試是這樣的(example here)。假設你的雲是一個div:

function moveMe(){ 
    var $this = $('#cloud'); 
    $this.each(function(){ 
      var ranX=Math.floor(Math.random()*11); 
      var startX = $this.offset().left; 
      var maxX = $this.parent().width(); 
      var newX = startX+ranX; 

      //newX = (newX>maxX)? 0: newX; 
      //alert("newX="+newX); 
      $this.animate({ 
       left: newX+'px' 

      }, "slow"); 
    }); 
} 
$(function(){ 



    setInterval('moveMe()',1000); 
}); 

注意興田標記應包含:

<div id="sky"> 
<div class="cloud" id="cloud"></div> 
</div> 

的CSS:

#sky{ 
width:990px; 
height:300px; 
background:blue; 
position:relative; /* important */ 
} 

.cloud{ 
position:absolute; /* important */ 
top:40px; 
left: 0; 
width:100px; 
height:80px; 
background: transparent url(images/cloud.png) top left no-repeat; 
} 
+1

如果您不打算提供即使*小*方向,您也不應該將其作爲「答案」發佈。 (注:我沒有倒下你,因爲我同意你的說法,只是沒有它的位置。) – Sampson 2010-01-18 14:04:03

+0

點了。我已經更新了我的解決方案。 – pixeline 2010-01-18 15:26:23

2

雲似乎是他們的容器內拖動。當您將鼠標懸停時,另一個元素將變爲動畫,並且當您懸停父項時,雲本身將在其父容器中左右滑動。

  1. jQuery's draggable plugin
  2. $.hover();動畫雨。
  3. $.animate();爲滑動。

向我們展示您嘗試過的內容,您將得到更詳細的回覆。

+0

iam不想要ir rian或懸停只是我想它移動 – 2010-01-18 14:06:38

0

我不知道如何在jQuery,但在簡單的JS,它的圖像移動與計時器。在Firefox和使用FireBug,你可以看到雲中的代碼