2014-02-10 147 views
0

編輯:我現在有這個:http://jsfiddle.net/cGZxv/115/如果我想擺脫容器div,只是使用「文檔」?是否有一個更清潔的方式做到這一點?Div移動鼠標移動中心()

我一直在玩一些我在網上找到的代碼,而且我幾乎都有它在我想要的地方。我只是無法弄清楚如何完成最後一部分。在這種的jsfiddle:

http://jsfiddle.net/cGZxv/114/

$(document).ready(function(){ 
    $('div.container').mousemove(function(e){ 
     var x = e.pageX - this.offsetLeft; 
     if (x <= 400) { 
      x2=x*0.2 
      $('div.box').css({'right': x2}); 
     } 
     var y = e.pageY - this.offsetTop; 
     if (y <= 400) { 
      y2=y*0.2 
      $('div.box').css({'bottom': y2}); 
     } 
    }); 
}); 

我想要做的就是有「測試箱」捕捉到containter DIV的中心,並在鼠標移動,基本上是「軌道」的中心。如果將鼠標移動到圓圈中,則會獲得所需的移動,但該框位於錯誤的位置。

在此先感謝!

+0

將'.container'添加到''並刪除容器div。 –

+0

什麼是正確的地點?我不理解它應該是什麼樣子。 –

+0

@azeós那將是什麼樣子? –

回答

1

這裏是把它放在身體而不是容器的JS。

$(document).ready(function(){ 
    $(window).mousemove(function(e){ 
     var x = e.pageX-window.innerWidth/2; 
     if (x <= 400) { 
      x2=x*0.2 
      x3=x2+window.innerWidth/2 
      $('div.box').css({'right': x3}); 
     } 
     var y = e.pageY-window.innerHeight/2; 
     if (y <= 400) { 
      y2=y*0.2 
      y3=y2+window.innerHeight/2 
      $('div.box').css({'bottom': y3}); 
     } 
    }); 
}); 

然後,我改變了CSS得到它在中間開始:

.box { width: 50px; height: 50px; border: 1px #000 solid; position: absolute; margin:-25px 0 0 -25px;bottom:50%;right:50%;} 

這裏有一個JSFiddle

+0

這是完美的!謝謝! –

+0

如果我想讓這個盒子變大一點,它就不再居中了。任何快速解決? –