成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

通過改變屬性來實現(xiàn)動畫

leanxi / 2763人閱讀

摘要:今天這篇文章主要簡述如何通過改變屬性來實現(xiàn)動畫效果,比如通過定時器快速改變等屬性,實現(xiàn)圖形在的頁面上做勻速的運動。

今天這篇文章主要簡述js如何通過改變屬性來實現(xiàn)動畫效果,比如通過定時器快速改變width, height, left, top等屬性,實現(xiàn)圖形在html的頁面上做勻速的運動。

現(xiàn)在就有這樣的一個需求,定義2個不同背景顏色的物體,當點擊按鈕的時候,實現(xiàn)向左,向下勻速
運動。

關鍵語法:
1,獲取當前dom的指定屬性值

function computedStyle(dom,attr) {        
        if(getComputedStyle) {
            return getComputedStyle(dom,"")[attr]
        } else {
            return dom.currentStyle()[attr] //兼容IE
        }
  }

這個方法定義的目的是為了獲取dom 屬性的值,例如:
dom: "

",調(diào)用這個方法
computedStyle(dom,"width") 返回 30。

2,定時器,返回這個定時器的唯一id標識

  timerId = setInterval(function(){
  },1000);

這個定時器的主要目的是為了勻速改變dom的屬性的值

示例:

   #box{                
        width: 100px; 
        height: 100px; 
        background: red; 
        position:absolute; 
        /*getComputedStyle 方法取屬性左邊的值"left" 為800*/
        left: 800px;  
        top: 50px;
    }


    #box1{                
        width: 100px; 
        height: 100px; 
        background: blue; 
        position:absolute; 
        left: 900px; 
        top: 50px;
    }

    
    
box
box1
//封裝獲取id的方法 function $(id) { return document.getElementById(id); } //獲取計算后的屬性 attr="width" function computedStyle(dom,attr) { if(getComputedStyle) { return getComputedStyle(dom,"")[attr] } else { return dom.currentStyle()[attr] } } window.onload=function(){ var btn=$("button"); var box=$("box"); var box1=$("box1"); btn.onclick=function(){ animate(box,"left",100); animate(box1,"top",400); } function animate(dom,attr,target){ //多個元素一起運動 每個元素綁定一個屬性放當前運動的定時器 dom.timer=setInterval(function() { var current=parseInt(computedStyle(dom,attr)); var step=(target>current)?1:-1; /*目標大于當前值 +1 目標小于當前值-1*/ if(target==current) { // 如果等于100的時候退出,也是定時器退出的條件 dom.style[attr]=target+"px"; clearInterval(dom.timer); return false; } //改變位置 dom.style[attr]=(current+step)+"px"; //改變style的屬性,實現(xiàn)動畫 },10) //每10毫秒改變一次 } }

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/112978.html

相關文章

  • 04.Android之動畫問題

    摘要:動畫占用大量內(nèi)存,如何優(yōu)化使用動畫的注意事項有哪些問題這個問題主要出現(xiàn)在幀動畫中,當圖片數(shù)量較多且圖片較大時就極易出現(xiàn),這個在實際開發(fā)中要尤其注意,盡量避免使用幀動畫。 目錄介紹 4.0.0.1 Android中有哪幾種類型的動畫,屬性動畫和補間動畫有何區(qū)別?補間動畫和屬性動畫常用的有哪些? 4.0.0.2 View動畫為何不能真正改變View的位置?而屬性動畫為何可以?屬性動畫是如...

    Muninn 評論0 收藏0
  • 通過改變屬性實現(xiàn)動畫

    摘要:今天這篇文章主要簡述如何通過改變屬性來實現(xiàn)動畫效果,比如通過定時器快速改變等屬性,實現(xiàn)圖形在的頁面上做勻速的運動。 今天這篇文章主要簡述js如何通過改變屬性來實現(xiàn)動畫效果,比如通過定時器快速改變width, height, left, top等屬性,實現(xiàn)圖形在html的頁面上做勻速的運動。 現(xiàn)在就有這樣的一個需求,定義2個不同背景顏色的物體,當點擊按鈕的時候,實現(xiàn)向左,向下勻速運動。 ...

    Sleepy 評論0 收藏0
  • 通過改變屬性實現(xiàn)動畫

    摘要:今天這篇文章主要簡述如何通過改變屬性來實現(xiàn)動畫效果,比如通過定時器快速改變等屬性,實現(xiàn)圖形在的頁面上做勻速的運動。 今天這篇文章主要簡述js如何通過改變屬性來實現(xiàn)動畫效果,比如通過定時器快速改變width, height, left, top等屬性,實現(xiàn)圖形在html的頁面上做勻速的運動。 現(xiàn)在就有這樣的一個需求,定義2個不同背景顏色的物體,當點擊按鈕的時候,實現(xiàn)向左,向下勻速運動。 ...

    wangbinke 評論0 收藏0

發(fā)表評論

0條評論

leanxi

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<