2014-02-09 94 views
0

我試圖用jQuery水平移動隨機定位的內聯<a>動畫內聯元素的位置()。left

看完這個後,你似乎必須將元素的位置從默認的「靜態」改爲「相對」。

但是不可能只動畫position().left值?

由於大多數答案都反對動畫left,這需要poistion: relative,所以無法弄清楚。

回答

1

但是不可能只動畫position().left值?

那麼,什麼是position().left

jQuery並不神奇。在引擎蓋下,animate方法一遍又一遍地修改element.style.left以創建平滑過渡。 element.style是一個便利屬性,它允許您修改元素的style屬性的內容,這反過來又是將CSS規則應用於特定元素的一種方式。

所以要回答你的問題:不,你不能。

0

這是簡單元素的動畫與jQuery的主要思想,因爲我看到它:

HTML:

<a id="moving" href="#">test</a> 

CSS:

#moving{position:relative;} 

的jQuery:

$(function(){ 
    $('#moving').animate({ left: '+=800' }, 8000); // this is RELATIVE positioning 
    // or 
    $('#moving').animate({ left: '1000px' }, 8000); // this is ABSOLUTE positioning 
}); 

希望有所幫助。

+1

我還沒有看到之前使用過的'+ ='技巧。這是一個CSS的東西或jQuery的嗎? – jwatts1980