SVG keyPoints 屬性
keyPoints是路徑動畫元素<animateMotion>的屬性。
關於上述動畫元素的具體用法參閱SVG animateMotion路徑動畫一章節。
動畫在不同的執行時段可能具有不同的特徵,可以通過keyPoints屬性為動畫分段。
keyPoints屬性值介於0-1之間,使用分號分隔。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> * { margin: 0px; padding: 0px; } svg { border:1px solid blue; width:400px; height:300px; margin:200px; } </style> </head> <body> <svg version="1.1" xmlns="http://www.w3.org/2000/svg"> <path d="M20,20 Q50,60 80,140 T340,100" stroke="red" stroke-width="6" fill="none" /> <animateMotion xlink:href="#ant" path="M20,20 Q50,60 80,140 T340,100" dur="10s" begin="0s" calcMode="linear" keyPoints="0;0.4;0.8;1" keyTimes="0;0.1;0.6;1" fill="freeze"> </animateMotion> <rect id="ant" x="0" y="0" width="20" height="20" fill="green"/> </svg> </body> </html>
程式碼分析如下:
(1).使用keyPoints屬性將整個動畫分為三段。
(2).keyTimes規定動畫每一段所花費的時間,必須與keyPoints分段對應起來。
使用values也可以分段,不過對一個比較複雜的線性動畫有點超過其能力,對於簡單線性規則動畫還可以。
關於keyTimes可以參閱calcMode, keyTimes和keySplines屬性一章節。
相關文章
- SVG 動畫 fill 屬性SVG動畫
- SVG restart 動畫屬性SVGREST動畫
- SVG repeatCount和repeatDur屬性SVG
- SVG restart動畫屬性SVGREST動畫
- SVG accumulate和additive動畫屬性SVG動畫
- svg02——svg繪製基本圖形,瞭解常用的屬性SVG
- SVG:理解stroke-dasharray和stroke-dashoffset屬性SVG
- VueJs中動態更改svg的相關屬性VueJSSVG
- CMake 屬性之全域性屬性
- defer 屬性和 async 屬性
- SVG <linearGradient> 線性漸變SVG
- CSS 屬性篇(七):Display屬性CSS
- CMake 屬性之目錄屬性
- CMake 屬性之目標屬性
- SVG線性漸變程式碼SVG
- 關於控制SVG描邊屬性縮放的神句vector-effect: non-scaling-strokeSVG
- Python - 物件導向程式設計 - 公共屬性、保護屬性、私有屬性Python物件程式設計
- CSS字型屬性和文字屬性詳解CSS
- Python 類的屬性與例項屬性Python
- python物件屬性管理(2):property管理屬性Python物件
- 根據屬性字串獲取屬性值字串
- CAD屬性編輯操作——物件屬性教程物件
- cssRules 屬性CSS
- previousElementSibling 屬性
- translucent屬性
- parentRule 屬性
- parentStyleSheet屬性
- cssText 屬性CSS
- Property屬性
- 私有屬性
- background屬性
- allowfullscreen 屬性
- ref屬性
- HTML 屬性HTML
- onreadystatechange 屬性
- DOM屬性
- jQuery 屬性jQuery
- background 屬性