1. CSS3動畫和js動畫各有什麼優劣
來CSS3的動畫的優點:
自1.在性能上會稍微好一些,瀏覽器會對CSS3的動畫做一些優化(比如專門新建一個圖層用來跑動畫)
2.代碼相對簡單
但其缺點也很明顯:
1.在動畫控制上不夠靈活
2.兼容性不好
3.部分動畫功能無法實現(如滾動動畫,視差滾動等)
javaScript的動畫正好彌補了這兩個缺點,控制能力很強,可以單幀的控制、變換,同時寫得好完全可以兼容IE6,並且功能強大。但想想CSS動畫的transform矩陣是C++級的計算,必然要比javascript級的計算要快。另外對庫的依賴也是一個很讓人頭疼的問題。
所以,對於一些復雜控制的動畫,使用javascript會比較靠譜。而在實現一些小的交互動效的時候,就多考慮考慮CSS吧。
2. js實現勻速下落動畫怎麼實現
建議直接使用jq的.animate() 設置絕對定位 控制top值就可以。也可以用css3的animation動畫效果實現,原理也是控制top值。原生js也是同理使用計時器重復調用改變top值的方法,當top值等於某個值時停止計時器,完成動畫效果。
3. js 為什麼slidedown()只是簡單展開,沒有緩緩出現的動畫效果設置了時間參數也不行
Example: 用 600 毫秒讓所有的 div 下滑顯示出來。
<!DOCTYPE html>
<html>
<head>
<style>
div { background:#de9a44; margin:3px; width:80px;
height:40px; display:none; float:left; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
Click me!
<div></div>
<div></div>
<div></div>
<script>
$(document.body).click(function () {
if ($("div:first").is(":hidden")) {
$("div").slideDown("slow");
} else {
$("div").hide();
}
});
</script>
</body>
</html>
4. javascript:animate動畫效果不好,在瀏覽器刷新後,自動回歸原位
效果不好究竟是指什麼不好?
另外,你是想在瀏覽器刷新後方框的位置不會復原?那你應該在每次動畫結束後把方框的位置數據保數伏存到本地cookie或者localStorage中,然後在頁面宴雀刷新後再從原保存位置讀取數據後賦值給方框。當然薯祥攜,也可以保存到後台伺服器中。
5. 怎麼用原生 JavaScript 實現像 jQuery 那樣平滑運動的動畫效果
jQuery的動畫實現原理 就是最普通的逐幀動畫(定格動畫)*:
簡單的說,根據ration、緩動專公式(比屬如線性)和當前時間計算出下一幀的狀態(即是DOM元素的css改變咯),用一個定時器(只用一個)作為update函數(這樣就可以控制動畫幀率了)~
6. 怎麼用JS現實網頁上的動畫效果!那個能不能教教我,謝謝。
掌握canvas的基本就很容易做這些,但是如果你要製作更加復雜的東西,你需要高級編譯語言像Paper.js Paper.js 是一個 JavaScript庫用來製作繪圖和動畫, 一種Adobe Illustrator使用的基於Scriptographer的腳本語言 . 它自稱是「矢量圖腳本語言中的瑞士軍刀」(「The Swiss Army Knife of Vector Graphics Scripting,」),其中重點突出矢量。 圖形製作中有兩種:矢量圖和柵格圖。柵格圖就像你照相機拍出來的圖片,如果你放大看,就是顏色填充的方格。矢量圖是有點連線組成的。他們是不同的線條租和形狀組,根據不同的指令繪圖。如果用矢量圖,如圖,這個Z放大後還是線條光滑,色澤飽滿。相比較,左邊的柵格圖就很模糊了。矢量圖庫用於動畫製作再完美不過,因為調解大小,旋轉,和移動都非常容易操作完成,且快捷,因為同樣的效果他們所需要使用的編譯代碼少。(參見樣本代碼)