久久久久久久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優化、全棧/全端開發、研究實驗、數據分析與監控、其它軟技能、前端技術網
主站蜘蛛池模板: 久久人体视频 | 欧美一区二区三区 | 国产中文 | 伊人春色成人 | 黄色免费观看网站 | 99re国产| 久久久久久成人 | 天天综合久久网 | 嫩草一区二区三区 | av网站观看 | 久久久久久久久久久爱 | 一区二区三区日韩 | 日日射影院 | 亚洲第一网站 | 九九热在线精品视频 | 男女羞羞视频大全 | 午夜精品久久久久久久星辰影院 | av一级久久 | av手机在线免费观看 | 亚洲午夜在线 | 久久久久久久久久久久一区二区 | 国产成人叼嘿视频在线观看 | 国产成人在线观看免费 | 999精品视频 | 青青草原精品99久久精品66 | 国产精品视频一区二区三区, | 欧美日韩免费一区二区三区 | 久久久男人的天堂 | 国产精品久久在线观看 | www成人啪啪18 | 日韩中文一区 | 一区二区视频在线 | 久久www免费人成看片高清 | 国产一区二区免费 | 精产国产伦理一二三区 | 最新黄色毛片 | 亚洲欧美综合精品久久成人 | 日本在线视频一区二区 | 国产激情自拍视频 | 日韩午夜 | 日韩成人在线观看 |