久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

HTML5 SVG帶圓形進度條動畫的提交按鈕特效

這是一款非常實用的HTML5 SVG帶圓形進度條動畫的提交按鈕特效。該提交按鈕在被點擊之后,按鈕變形為一個圓形的進度條,當進度條運行一周之后,可以設置提交成功和提交失敗的兩種
  簡要教程
  這是一款非常實用的HTML5 SVG帶圓形進度條動畫的提交按鈕特效。該提交按鈕在被點擊之后,按鈕變形為一個圓形的進度條,當進度條運行一周之后,可以設置提交成功和提交失敗的兩種按鈕狀態。

2.jpg

  制作方法
  HTML結構
  制作這個提交按鈕特效的HTML結構需要一個包裹容器,里面有一個提交按鈕和三個<svg>元素。
  1. <div id="progress-button" class="progress-button">
  2.   <!-- 提交按鈕 -->
  3.   <button><span>Submit</span></button>

  4.   <!-- svg 圓形進度條 -->
  5.   <svg class="progress-circle" width="70" height="70">
  6.     <path d="m35,2.5c17.955803,0 32.5,14.544199 32.5,32.5c0,17.955803 -14.544197,32.5 -32.5,32.5c-17.955803,0 -32.5,-14.544197 -32.5,-32.5c0,-17.955801 14.544197,-32.5 32.5,-32.5z"/>
  7.   </svg>

  8.   <!-- 提交成功的標記 -->
  9.   <svg class="checkmark" width="70" height="70">
  10.     <path d="m31.5,46.5l15.3,-23.2"/>
  11.     <path d="m31.5,46.5l-8.5,-7.1"/>
  12.   </svg>

  13.   <!-- 提交失敗的標記 -->
  14.   <svg class="cross" width="70" height="70">
  15.     <path d="m35,35l-9.3,-9.3"/>
  16.     <path d="m35,35l9.3,9.3"/>
  17.     <path d="m35,35l-9.3,9.3"/>
  18.     <path d="m35,35l9.3,-9.3"/>
  19.   </svg>
  20. </div>            
復制代碼

  CSS樣式
  首先提交按鈕容器需要設置為inline-block樣式。
  1. .progress-button {
  2.   position: relative;
  3.   display: inline-block;
  4.   text-align: center;
  5. }     
復制代碼

  然后在為提交按鈕提供一些基本樣式,并設置過渡動畫效果。
  1. Undo
  2. Redo全屏常用
  3. 純文本
  4. 微軟雅黑3 Hr
  5. B I U Color BgColor Url Unlink
  6. Table
  7. Removeformat
  8. AutotypesetLeftCenterRight
  9. FloatLeftFloatRightOrderedlistUnorderedlist表情圖片附件引用代碼
復制代碼

  在鼠標滑過提交按鈕的時候,修改按鈕的背景顏色和文字顏色。
  1. .progress-button button:hover {
  2.   background-color: #1ECD97;
  3.   color: #fff;
  4. }        
復制代碼

  所有的SVG元素都采用絕對定位方式來居中對齊,并且不允許有任何的pointer-events。
  1. .progress-button svg {
  2.   position: absolute;
  3.   top: 0;
  4.   left: 50%;
  5.   -webkit-transform: translateX(-50%);
  6.   transform: translateX(-50%);
  7.   pointer-events: none;
  8. }            
復制代碼

  SVG的路徑沒有任何的填充色,只有描邊。開始的時候它們是被隱藏起來的,透明度被設置為0。
  1. .progress-button svg path {
  2.   opacity: 0;
  3.   fill: none;
  4. }      
復制代碼

  圓形進度條通過設置描邊為5個單位來創建。
  1. .progress-button svg.progress-circle path {
  2.   stroke: #1ECD97;
  3.   stroke-width: 5;
  4. }      
復制代碼

  當開始loading線程的時候,按鈕會變形為圓形,和圓形進度條相同的大小。
  1. .loading.progress-button button {
  2.   width: 70px; /* 制作一個圓形 */
  3.   border-width: 5px;
  4.   border-color: #ddd;
  5.   background-color: transparent;
  6.   color: #fff;
  7. }               
復制代碼

  變為圓形后,調教按鈕上的文字要快速隱藏起來。
  1. .loading.progress-button span {
  2.   -webkit-transition: opacity 0.15s;
  3.   transition: opacity 0.15s;
  4. }
  5. .loading.progress-button span,
  6. .success.progress-button span,
  7. .error.progress-button span {
  8.   opacity: 0; /* keep it hidden in all states */
  9. }               
復制代碼

  JAVASCRIPT
  在javascript代碼中,button是HTML元素,progressEl是SVG元素,它是代表圓形的進度條。successEl和errorEl分別代表提交成功和失敗的標記,也是SVG元素。js代碼中通過UIProgressButton()方法來初始化這個提交按鈕特效。
  1. function UIProgressButton( el, options ) {
  2.   this.el = el;
  3.   this.options = extend( {}, this.options );
  4.   extend( this.options, options );
  5.   this._init();
  6. }

  7. UIProgressButton.prototype._init = function() {
  8.   this.button = this.el.querySelector( 'button' );
  9.   this.progressEl = new SVGEl( this.el.querySelector( 'svg.progress-circle' ) );
  10.   this.successEl = new SVGEl( this.el.querySelector( 'svg.checkmark' ) );
  11.   this.errorEl = new SVGEl( this.el.querySelector( 'svg.cross' ) );
  12.   // init events
  13.   this._initEvents();
  14.   // enable button
  15.   this._enable();
  16. }              
復制代碼
  其它js代碼請參考下載文件。

  本文版權屬于jQuery之家,轉載請注明出處:http://www.htmleaf.com/html5/SVG/201507172244.html

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

由于實際運行環境是在瀏覽器中,因此性能還取決于JavaScript解釋器的效率,指定的FPS幀速在低性能解釋器中可能不會達到,所以這部分不是開發者能夠決定的,開發者能作的是盡可能通
本文將使用HTML5提供的VideoAPI做一個自定義的視頻播放器,需要用到HTML5提供的video標簽、以及HTML5提供的對JavascriptAPI的擴展。,HTML5中國,中國最大的HTML5中文門戶。
隨著 Hybrid 應用的豐富,HTML5 工程師們已經不滿足于把桌面端體驗簡單移植到移動端,他們覬覦移動原生應用人性化的操作體驗,特別是原生應用與生俱來的豐富的手勢系統。HTML5 沒有提
你想要在自己網站上分享一個產品,或者是一個作品集,又或者僅僅只是一個靈感。在你發布到網上之前,你想讓它看起來有吸引力,專業,或者至少得看起來像那么回事。那么你接下
H5廣告,包括H5廣告的設計流程,究竟有什么講究,和階段。為了能幫助更多的人了解H5廣告,我專門做了一個講義。同時,也讓我意外的收到了非常好反饋和認!這是對我的極大鼓勵!我的
本文主要內容有:框架與組件、構建生態、開發技巧與調試、html、css與重構、native/hybrid/桌面開發、前端/H5優化、全棧/全端開發、研究實驗、數據分析與監控、其它軟技能、前端技術網
主站蜘蛛池模板: 国产精品久久久久久久久久 | 久久久久久国产精品mv | 欧美日韩亚洲国产综合 | 欧美一区视频 | 精品免费av | 免费国产精品久久久久久 | 一级网站| 国产综合视频 | 精品国产欧美一区二区三区成人 | 国产91丝袜| 产真a观专区 | 国产在线播放一区二区三区 | 欧美一区二区小视频 | 久久久久久久97 | 一区二区国产精品 | 天天av综合 | av香蕉 | 成年人视频免费在线观看 | 精品国产99 | 亚洲高清视频一区二区 | 亚洲精品一区中文字幕乱码 | 一级在线免费观看 | 99精品视频在线 | 性做久久久久久免费观看欧美 | 欧美激情va永久在线播放 | 成人精品鲁一区一区二区 | 亚洲免费一区二区 | 亚洲综合五月天婷婷 | 久久久九九 | 亚洲视频在线观看一区二区三区 | 日韩欧美1区2区 | 美女爽到呻吟久久久久 | 91视频久久久久 | 99re视频在线免费观看 | 欧美日韩在线电影 | 伦理一区二区 | 亚洲国产aⅴ精品一区二区 免费观看av | 欧美日韩一| 免费观看一级毛片 | 日本久久精品视频 | 国产精品美女一区二区 |