封装环形加载进度条(Vue插件版和原生js版)
1、效果预览
2、用到的知识
主要利用SVG的stroke-dasharray和stroke-dashoffset这两个属性。
在看下面文章之前,你需要了解
<!DOCTYPE html>
<html>
<head>
<title>svg demo</title>
<style type="text/css">
#line{
transition: all 2s;
stroke-dasharray:300,320;
stroke-dashoffset:300;
}
svg:hover #line{
stroke-dashoffset: 0;
}
#circle{
transition: all 2s;
stroke-dasharray:314,314;
stroke-dashoffset:314;
}
svg:hover #circle{
stroke-dashoffset:0;
}
</style>
</head>
<body>
<h3>线段区域</h3>
<svg width="100%" height="40" >
<line id="line" x1="30" y1="30" x2="300" y2="30" stroke-width="20" stroke="red" />
</svg>
<h3>圆区域</h3>
<svg width="200" height="200" viewBox="0 0 200 200">
<circle id="circle" cx="100" cy="80" r="50" fill="gray" stroke-width="5" stroke="green" />
</svg>
</body>
</html>
3、使用
有两种方式,一种是直接安装即可使用,一种需要封装。选一种适合自己的即可。
(1)、安装插件
安装Vue插件
npm install loading-vue-component
使用
// main.js
import loading from 'loading-vue-component'
Vue.use(loading)
// app.vue
<template>
<div id="app">
<loading :radius="20" :progress="progress" :stroke="2" :color='color'></loading>
</div>
</template>
<script>
export default {
name: 'app',
data() {
return { progress: 0,color:'#1989fa'}
}
}
</script>
(2)、封装插件
Vue版
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>loading</title>
<style>
html,
body {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
position: relative;
margin: 0;
padding: 0;
}
circle {
transition: stroke-dashoffset 0.15s;
transform: rotate(-90deg);
transform-origin: 50% 50%;
}
.txt{
font-size: 14px;
text-align: center;
}
.loading{
padding:40vh;
}
</style>
</head>
更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44519496/article/details/119327892
封装环形加载进度条(Vue插件版和原生js版)的更多相关文章
- 自己写的页面加载进度条jquery插件
(function ($) { var progressId = "progress" + Math.round(Math.random() * 100) var progress ...
- react封装简单的浏览器顶部加载进度条全局组件
在项目中经常会有在请求前后加loading或者加加载进度条,一般这些组件都会抽离出来作为全局组件 进度条的插件貌似都不是很符合自己项目中的需求,于是.. 参考nprogress样式,自己在项目中封装组 ...
- ajax页面加载进度条插件
下面两个都是youtube视频的加载进度条效果的ajax插件 一.官网:http://ricostacruz.com/nprogress/官网 github:https://github.com/rs ...
- pace.js – 加载进度条插件
这儿只是简单介绍一下这个插件pace.js. 在页面中引入Pace.js,页面就会自动监测你的请求(包括Ajax请求),在事件循环滞后,会在页面记录加载的状态以及进度情况.此插件的兼容性很好,可以兼容 ...
- vue使用nprogress页面加载进度条
vue使用nprogress页面加载进度条 NProgress是页面跳转是出现在浏览器顶部的进度条 官网:http://ricostacruz.com/nprogress/ github:https: ...
- pace.js – 网页自动加载进度条插件
网站顶部的页面加载进度条是怎么实现的,页面的加载进度百分比,有时候获取是比较麻烦的,当然也可以利用一些优秀的JavaScript插件来实现,今天就为大家介绍这样子的一款插件:pace.js. [官方网 ...
- 【原生JS插件】LoadingBar页面顶部加载进度条
先展示一下已经实现的效果: 预览地址:http://dtdxrk.github.io/js-plug/LoadingBar/index.html 看到手机上的浏览器内置了页面的加载进度条,想用在pc上 ...
- 【Web前沿技术】纯 CSS3 打造的10个精美加载进度条动画
之前向大家介绍8款优秀的 jQuery 加载动画和进度条插件,今天这篇文章向大家推荐10个纯 CSS3 代码实现精美加载进度条动画效果的方案.加载动画和进度条在网站和 Web 应用中的使用非常流行,特 ...
- iOS UIWebView 加载进度条的使用-WKWebView的使用,更新2017.6.26
1.由于项目中加载网络插件,直接使用了webview加载.使用了三方NJKWebViewProgress进度条的使用,近期在测试时发现,网络缓慢时出现白屏,有卡顿现象. 于是采用了WKWebView进 ...
随机推荐
- JAVA 进程线程详解
线程和进程 一.进程 进程是指运行中的程序,比如我们使用QQ,就启动该进程分配内存空间. 进程是程序的一次执行过程,或是正在运行的一个程序.是一个动态的过程:有它自升的产生,存在和消亡的过程 二.线程 ...
- Problem N: 输出回字形
这个题如果用for循环直接做的话恐怕得做上几个小时吧,加上一点小技巧,用坐标法来写这个题.就像下面这样: 坐标原点不在矩形的角上,而在矩形的中心处,这只是算是一个技巧,理解起来好理解而已.
- [转载] go get 拉取第三方包过慢、卡住解决方案
修改go env,选用国内的代理地址下载.
- go context详解
Context通常被称为上下文,在go中,理解为goroutine的运行状态.现场,存在上下层goroutine context的传递,上层goroutine会把context传递给下层gorouti ...
- 计算属性、侦听属性、局部与全局组件使用、组件通信(父子互传)、ref属性、动态组件和keep-alive、插槽
今日内容概要 计算属性 侦听属性 局部组件和全局组件 组件通信之父传子 组件通信之子传父 ref属性(组件间通信) 动态组件和keep-alive 插槽 内容详细 1.计算属性 # 插值的普通函数,只 ...
- Promql基础语法2
数据样本 直方图类型 delta函数 运算操作 数学运算 node_disk_info / 100 当瞬时向量与标量之间进行数学运算时,数学运算符会依次作用域瞬时向量中的每一个样本值,从而得到一组新的 ...
- 【转】WinForm窗体刻度尺
`using System; using System.Drawing; using System.Windows.Forms; using System.Drawing.Drawing2D; nam ...
- 中间件漏洞之IIS
IIS中间件漏洞 我们常见的中间件有IIS.Apache.Nginx,其中IIS中间件有什么漏洞呢? IIS 短文件名漏洞: 漏洞产生的原因是为了兼容MS-DOS程序,windows为文件名较长的文件 ...
- Java编程小技巧(1)——方法传回两个对象
原文地址:Java编程小技巧(1)--方法传回两个对象 | Stars-One的杂货小窝 题目是个伪命题,由Java语法我们都知道,方法要么返回一个对象,要么就不返回 当有这样的情况,我们需要返回两个 ...
- django的下载安装,目录结构的介绍,简单的django应用
1.django的下载安装 pip3 install django==1.11.9 2.django的创建 1.在windows的cmd窗口下 1.1创建django项目 django-admin s ...