使用Ajax实现进度条的绘制


Posted in Javascript onApril 07, 2022

使用:Easy Mock创建api接口

使用Ajax实现进度条的绘制

注意:若弹出该invalid or unexpected token错误提示信息,说明编写的数据格式有问题,修改为正确格式即可创建成。随后可以在postman中进行验证:

使用Ajax实现进度条的绘制

ajax通过GET方法获取数据:

使用Ajax实现进度条的绘制

根据获取出来得阶段数据来更改相对应得进度:

使用Ajax实现进度条的绘制

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="2.css" rel="external nofollow" >
    <script src="2.js"></script>
    <script src="jquery.min.js"></script>
</head>
 
<body>
    <div class="box">
        <div class="pr1">
            <span class="circle">1</span>
            <span class="line"></span>
            <span class="cont1">科研人员申报</span>
        </div>
        <div class="pr1">
            <span class="circle">2</span>
            <span class="line"></span>
            <span class="cont2">院系申报</span>
        </div>
        <div class="pr1">
            <span class="circle">3</span>
            <span class="line"></span>
            <span class="cont2">专家评审</span>
        </div>
        <div class="pr1_last">
            <span class="circle">4</span>
            <span class="cont2">校级审核</span>
        </div>
    </div>
 
</body>
 
</html>
window.onload = function() {
    $(function() {
        var b
            //使用ajax获取api中得数据,看是那个阶段
        $.ajax({
            type: 'GET',
            url: 'https://mock.mengxuegu.com/mock/624d8ce9f56fd246b02bfcaf/process/getinfo',
            success: function(res) {
                console.log(res.data[0].BatchState);
                b = res.data[0].BatchState;
                //利用b数据去改变状态//1未开始,2申报中,3院系审核中,4专家审核中,5校级审核中,6已结束
                if (b == 1) {
                    $('.cont1').css('color', 'skyblue')
                    $('.circle').eq(0).css('background-color', 'skyblue')
                }
                if (b == 2) {
                    $('.line').eq(0).css('border-color', 'green')
                    $('.line').eq(0).css('border-style', 'solid')
                    $('.circle').eq(0).html('√')
                    $('.circle').eq(0).css('background-color', 'green')
                    $('.cont1').css('color', 'green')
                    $('.circle').eq(1).css('background-color', 'skyblue')
                    $('.cont2').eq(0).css('color', 'skyblue')
                }
                if (b == 3) {
                    $('.circle').eq(0).html('√')
                    $('.circle').eq(0).css('background-color', 'green')
                    $('.circle').eq(1).html('√')
                    $('.cont2').eq(0).css('color', 'green')
                    $('.circle').eq(1).css('background-color', 'green')
                    $('.cont1').css('color', 'green')
                    $('.line').eq(0).css('border-color', 'green')
                    $('.line').eq(1).css('border-color', 'green')
                    $('.line').eq(0).css('border-style', 'solid')
                    $('.line').eq(1).css('border-style', 'solid')
                    $('.circle').eq(2).css('background-color', 'skyblue')
                    $('.cont2').eq(1).css('color', 'skyblue')
                }
                if (b == 4) {
                    $('.circle').eq(0).html('√')
                    $('.circle').eq(0).css('background-color', 'green')
                    $('.circle').eq(1).html('√')
                    $('.cont2').eq(0).css('color', 'green')
                    $('.cont2').eq(1).css('color', 'green')
                    $('.circle').eq(1).css('background-color', 'green')
                    $('.circle').eq(2).css('background-color', 'green')
                    $('.cont1').css('color', 'green')
                    $('.line').eq(0).css('border-color', 'green')
                    $('.line').eq(1).css('border-color', 'green')
                    $('.line').eq(2).css('border-color', 'green')
                    $('.line').eq(0).css('border-style', 'solid')
                    $('.line').eq(1).css('border-style', 'solid')
                    $('.line').eq(2).css('border-style', 'solid')
                    $('.circle').eq(3).css('background-color', 'skyblue')
                    $('.cont2').eq(2).css('color', 'skyblue')
                }
            }
        })
 
    })
}
* {
    margin: 0px;
    padding: 0px;
}
 
.box {
    width: 305px;
    height: 40px;
    margin: 20px auto;
    line-height: 40px;
}
 
.circle {
    position: absolute;
    top: 10px;
    left: 0px;
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    background-color: grey;
    line-height: 20px;
    text-align: center;
    color: white
}
 
.line {
    position: absolute;
    top: 20px;
    left: 19px;
    display: inline-block;
    width: 70px;
    height: 0px;
    border-top: grey 1px;
    margin: 0px;
    border-top-style: dotted
}
 
.pr1 {
    float: left;
    width: 90px;
    height: 40px;
    position: relative;
    text-align: center;
}
 
.pr1_last {
    float: left;
    width: 35px;
    height: 40px;
    position: relative;
    text-align: center;
}
 
.cont1 {
    position: absolute;
    top: 18px;
    left: -20px;
    font-size: 10px;
    color: grey
}
 
.cont2 {
    position: absolute;
    top: 18px;
    left: -10px;
    font-size: 10px;
    color: grey
}

到此这篇关于使用Ajax实现进度条的绘制的文章就介绍到这了,更多相关Ajax进度条内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
Javascript调试工具(下载)
Jan 09 Javascript
判断用户的在线状态 onbeforeunload事件
Mar 05 Javascript
JavaScript基本的输出和嵌入式写法教程
Oct 20 Javascript
javascript创建对象的几种模式介绍
May 06 Javascript
基于jquery插件编写countdown计时器
Jun 12 Javascript
jQuery插件HighCharts实现的2D回归直线散点效果示例【附demo源码下载】
Mar 09 Javascript
Angular中ng-bind和ng-model的区别实例详解
Apr 10 Javascript
微信小程序图片横向左右滑动案例
May 19 Javascript
js中apply和call的理解与使用方法
Nov 27 Javascript
jQuery HTML css()方法与css类实例详解
May 20 jQuery
antd多选下拉框一行展示的实现方式
Oct 31 Javascript
javascript局部自定义鼠标右键菜单
Dec 08 Javascript
Vue.Draggable实现交换位置
vue-cli3.0修改打包后的文件名和文件地址,打包后本地运行报错解决
vue cli4中mockjs在dev环境和build环境的配置详情
简单聊聊TypeScript只读修饰符
Apr 06 #Javascript
关于JS中的作用域中的问题思考分享
JavaScript中的LHS和RHS分析详情
vue中控制mock在开发环境使用,在生产环境禁用方式
Apr 06 #Vue.js
You might like
PHP统计目录下的文件总数及代码行数(去除注释及空行)
2011/01/17 PHP
php socket通信(tcp/udp)实例分析
2016/02/14 PHP
9个比较实用的php代码片段
2016/03/15 PHP
Zend Framework入门教程之Zend_Mail用法示例
2016/12/08 PHP
php使用curl下载指定大小的文件实例代码
2017/09/30 PHP
比较全的JS checkbox全选、取消全选、删除功能代码
2008/12/19 Javascript
Jquery Autocomplete 结合asp.net使用要点
2010/10/29 Javascript
ASP.NET jQuery 实例9  通过控件hyperlink实现返回顶部效果
2012/02/03 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
2013/01/23 Javascript
Javascript实现单张图片浏览
2014/12/18 Javascript
jquery.cookie.js使用指南
2015/01/05 Javascript
js函数内变量的作用域分析
2015/01/12 Javascript
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
2020/04/16 Javascript
JS 拼凑字符串的简单实例
2016/09/02 Javascript
jQuery实现的浮动层div浏览器居中显示效果
2017/02/03 Javascript
JavaScript之Canvas_动力节点Java学院整理
2017/07/04 Javascript
Angular简单验证功能示例
2017/12/22 Javascript
Angular4 反向代理Details实践
2018/05/30 Javascript
深入浅析js原型链和vue构造函数
2018/10/25 Javascript
详解vue 路由跳转四种方式 (带参数)
2019/04/28 Javascript
nodejs提示:cross-device link not permitted, rename错误的解决方法
2019/06/10 NodeJs
微信小程序中如何使用flyio封装网络请求
2019/07/03 Javascript
layui实现数据分页功能(ajax异步)
2019/07/27 Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
Python基于Tkinter的HelloWorld入门实例
2015/06/17 Python
numpy.random.seed()的使用实例解析
2018/02/03 Python
python如何拆分含有多种分隔符的字符串
2018/03/20 Python
详解python--模拟轮盘抽奖游戏
2019/04/12 Python
python中setuptools的作用是什么
2020/06/19 Python
HTML5地理定位与第三方工具百度地图的应用
2016/11/17 HTML / CSS
印尼最大的在线购物网站:MatahariMall.com
2016/08/26 全球购物
中专毕业生的自我鉴定
2013/12/01 职场文书
仓库保管员岗位职责
2013/12/20 职场文书
酒店管理失职检讨书
2014/09/16 职场文书
go web 预防跨站脚本的实现方式
2021/06/11 Golang
clear 万能清除浮动(clearfix:after)
2023/05/21 HTML / CSS