麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

JavaScript 創建運動框架的實現代碼

2019-11-20 22:43:53
字體:
來源:轉載
供稿:網友

封裝好的運動框架Move(obj,attr,iTarget),可直接調用:

可用于設置width、border、fontSize、marginLeft、opacity等許多常見屬性值的變速變化,實現各種有趣效果。

兼容IE和FF。

復制代碼 代碼如下:

/****************
    *
    *   IE-BUG:
    *   在IE中,設置opacity屬性時,元素樣式中需要設置opacity屬性,才能讀取到opacity值。
    *
    *   obj:元素對象。   attr:用引號包圍的屬性名。   iTarget:屬性目標值。
    *
    *****************/


    function Move(obj,attr,iTarget){
        clearInterval(obj.timer);//關閉前一個定時器,解決對同個對象同時調用多個Move()時,定時器疊加問題。使用obj.timer給每個調用Move()的對象賦予各自的定時器,防止多個對象同時調用Move()時,同用一個定時器,而導致相關干擾問題。
        obj.timer=setInterval(function(){
            var cur=0;//創建一個變量,用于存儲 attr屬性每時每刻的值
            if(attr=="opacity"){
            //針對在FF中opacity屬性值為浮點數值問題,將屬性值 四舍五入、轉換成浮點型。乘以100,使opacity屬性值與IE統一為百分數
                cur=Math.round(parseFloat(getStyle(obj,attr))*100);
            }else{
                cur=parseInt(getStyle(obj,attr));//將除opacity外的屬性(width/fontSize/MarginLeft等)的初始值 轉換為整型
            }
            var speed=(iTarget-cur)/10;//創建 遞減的速度speed變量。實現屬性值的變速改變

            speed=speed>0?Math.ceil(speed):Math.floor(speed);//取整,解決瀏覽器忽略小于1px的數值 導致運動結束時,離目標值Itarget少幾個像素的問題

            if(iTarget==cur){//當目標值等于目標值時,結束定時器
                clearInterval(obj.timer);
            }else{
                    cur+=speed;//當前值cur 加上 遞減的速度值speed
                if(attr=="opacity"){
                    // 分別對IE和FF設置opacity屬性值
                    obj.style.filter="alpha(opacity:"+cur+")"; //for IE
                    obj.style.opacity=cur/100;   //for FF
                }else{
                    obj.style[attr]=cur+"px"; //給指定屬性attr 添加值cur+speed
                }
            }
        },30);
    }
    //getStyle()函數 用于兼容IE和FF:獲取 對象的 非行間樣式中的屬性的值。 obj:元素對象。 name:屬性名。
    function getStyle(obj,name){
        if(obj.currentStyle){
            return obj.currentStyle[name];//for IE
        }else{
            return getComputedStyle(obj,false)[name];//for FF
        }
    }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久国产精品小视频 | 得得啪在线视频 | 一区二区精品视频 | 狠狠干天天 | 欧美18—19sex性护士中国 | 久久精品亚洲欧美日韩精品中文字幕 | 一级免费视频 | 欧美1区2区在线观看 | 国产91成人 | 国产精品成人亚洲一区二区 | 久国产 | 一区二区三区无码高清视频 | 成人区一区二区 | 日韩视频一区二区三区在线观看 | 韩国一大片a毛片 | 伊人网站 | av电影直播 | av成人在线免费观看 | 亚洲国产精品99 | 国产美女爽到喷白浆的 | 欧美 亚洲 视频 | 亚洲精品午夜国产va久久成人 | 羞羞视频免费网站 | 毛片免费观看日本中文 | 狠狠操视频网站 | 免费看日韩片 | 他也色在线视频 | chinese xvideos gay | 日韩.www| 国产三级国产精品国产普男人 | av中文字幕免费在线观看 | 久久亚洲精品久久国产一区二区 | 欧美人与禽性xxxxx杂性 | 免费的性生活视频 | 久久久久免费电影 | 日韩av官网 | 亚洲卡通动漫在线观看 | 欧美成人精品一区二区三区 | 懂色粉嫩av久婷啪 | 日日操夜夜操视频 | 久久国产精品网 |