2012-09-20 72 views
0

我使用jQuery在屏幕上移動一些元素,但是animate函數不工作(或者我的CSS定義阻礙它,更像..)。 舉例來說,我相信這個動畫元素的id foobar的給定的位置..jQuery Animate不工作

$('#foobar').animate({ top: '0px', left: '200px' }); 

我在這裏一個的jsfiddle例如:have a play

據我所知,我應該能夠把絕對定位的元素(示例中的類menuButton),只要它們位於相對定位的div(示例中的ScreenDesign)內。不過,我無法得到這個工作。

謝謝:)

+0

我不知道你的問題沒有衝突,但我注意到,u有沒有在示例中包含jquery。與此小提琴的東西是「移動」http://jsfiddle.net/upNSd/4/ – sofl

回答

0

您的jsfiddle不工作,因爲jQuery不包括(僅MooTools,一個不同的庫,默認情況下包括在內)。

要包括jQuery的,從 「框架」 選項卡中選擇它:

enter image description here

這裏有一個固定的版本:little link

+0

標記爲答案,因爲你的答案是最快的,它確實解決了jFiddle問題(我第一次使用它tbh)。然而,我仍然在我的完整項目中得到原始問題,其中包括jquery 1.8.1(我可以看到它在firebug中加載),因此對於原始問題,我仍然沒有更進一步。 err ... –

+0

@Fetchezlavache你可以在[pastebin.com](http://pastebin.com)或其他類似網站上發佈完整的HTML嗎? – Chris

+0

好..不太確定該說些什麼。再次粘貼jsfiddle中的所有*輸出,並且它在那裏工作。 http://jsfiddle.net/7AszQ/ –

1

你只是忘了引用jQuery。

http://jsfiddle.net/upNSd/2/

要調試類似的問題,您應該檢查(在Chrome和螢火F12)JavaScript控制檯。爲了您的撥弄它指出:

Uncaught TypeError: Cannot call method 'animate' of null

+0

位置'動畫'沒有任何jQuery UI的依賴。 – Chris

+0

你是對的,謝謝@ Abody97 –

+1

+1 @ Abody97沒有jQuery UI依賴關係,但肯定是jQuery依賴關係。 :)順便說一句F12在PC上Mac – iambriansreed

0

將動畫包裝到jQuery就緒函數中,確保DOM完全加載。

jQuery(document).ready(onready); 

    function onready 
    { 
    jQuery('#foobar').animate({ top: '0px', left: '200px' }); 

    } 

此外,使用「jQuery的」,而不是在多萊爾符號將確保在任何JS庫:-)

+1

這對jsfiddle來說不是必要的,它用$(window)包裝你的腳本。自動加載 –

+0

謝謝米哈爾,不錯的地方:-) – SimonPeacock