js 擷取和設定css3 屬性值的實現方法

來源:互聯網
上載者:User

眾多周知 CSS3 增加了很多屬性,在讀寫的時候就沒有原先那麼方便了。

如:

<div style="left:100px"></div>

只考慮行間樣式的話,只需 div.style.left 就可擷取,設定的時候也只需要 div.style.left='100px' 即可。很簡單。

但是css3來了

如:

<div style="-webkit-transform: translate(20px,-20px)"></div>

怎麼搞?被嚇住了。。。

設定的時候很簡單:
div.style.webkitTransform='translate(20px,-20px) ' 遵循駝峰式的寫法即可。

擷取的時候:
div.style. webkitTransform 的值為字串 ‘translate(20px,-20px) '
如何擷取想要的X、Y值呢?搜尋半天沒有找到簡單辦法。只能字串截取,或者正則匹配來獲得了。

寫一個Regex 擷取想要的 20和-20

reg=/\-?[0-9]+/g 匹配負號和數字

reg2=/\-?[0-9]+\.?[0-9]*/g 可能包含小數點的

然後來match搜尋一下
div.webkitTransform.match(reg) //結果 [20,-20]
就會返回一個包含X值和Y值的數組了。

同理:
-webkit-transform: skew(20deg,-50deg); /* skew(相對x軸傾斜,相對y軸傾斜)*/

-webkit-transform: matrix(1,0.4,0,1,0,0);

各種等等。。。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.