JS与HTML结合实现流程进度展示条思路详解


Posted in Javascript onSeptember 03, 2017

效果如下:

JS与HTML结合实现流程进度展示条思路详解

一、设计思路

分为以下几步(仅供参考)

【竖线线】

这个采用ul的list标签制作,保证了可随时添加,以及纵向排布

【小圆圈】

html标签好像没有提供小圆圈标签,此处采用,div添加弧度角完成,,正方形的div添加弧度等于div的长(或者宽),就能够实现小圆圈。带子就更简单了,,div里直接添加文字即可

【文字】

文字要求紧跟小圆圈,,且与小圆圈保持同一水平高度,此处采用,position: absolute;设置top完成同一水平高度的布局

【动态效果】

前端的动态效果,不用说肯定由Javascript完成,,此处主要需要设置两个事件即,

鼠标移入事件onmouseover=”on_mous_move(‘info_name_1')”

鼠标移出事件onmouseout=”on_mous_out(‘info_name_1')”

主要逻辑就是给文字前加入❤和前后的两个空格,以及删除加入内容

【注意】

一个空格对于js来说其实是6个字符“ ;”,所以在切割的时候需要注意

。。。。就这么多,下面是实现的源码

--------------------------------------------------------------------------------

二、实现源码

源码如下,仅供参考:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title>一个好看的进度页面</title>
</head>
<body>
<style type="text/css">
  * {
    margin: 0;
    padding: 0;
    list-style-type: none;
  }
  a, img {
    border: 0;
  }
  body {
    background: #f2f2f2;
    font: 12px/180% Arial, Helvetica, sans-serif, "新宋体";
  }
  /* stepInfo */
  .stepInfo {
    position: relative;
    background: #f2f2f2;
    margin: 80px auto auto 100px;
    height: 240px;
  }
  .stepInfo ul {
    /*float: left;*/
    height: 100%;
    width: 0.6em;
    background: #45a0f3;
  }
  .stepIco {
    /*圆形显示*/
    border-radius: 1.4em;
    padding: 0.2em;
    background: #45a0f3;
    text-align: center;
    line-height: 1.4em;
    color: #fff;
    position: absolute;
    width: 1.4em;
    height: 1.4em;
  }
  .stepIco1 {
    left: -0.7em;
    top: -1%;
  }
  .stepIco2 {
    left: -0.7em;
    top: 50%;
  }
  .stepIco3 {
    left: -0.7em;
    top: 95%;
  }
  .stepText {
    color: #666;
    margin-top: 0.2em;
    width: 4em;
    text-align: center;
    margin-left: -1.4em;
  }
  .info {
    /*信息布局及颜色*/
    position: absolute;
    font-size: large;
    color: black;
    margin: 0 0 0 25px;
    width: 200px;
    color: #45a0f3;
  }
  .info_1 {
    top: -1%;
  }
  .info_2 {
    top: 50%;
  }
  .info_3 {
    top: 95%;
  }
</style>
<script type="text/javascript">
  function on_mous_move(name) {
    var info = document.getElementsByName(name)[1];
    var value = info.innerHTML;
    info.innerHTML = " ❤ " + value;
    var div_info = document.getElementsByName(name)[0];
    div_info.style.backgroundColor = "#47009b";
  }
  function on_mous_out(name) {
    var info = document.getElementsByName(name)[1];
    var value = info.innerHTML;
    info.innerHTML = value.substr(13, value.length);
    var div_info = document.getElementsByName(name)[0];
    div_info.style.backgroundColor = "#45a0f3";
  }
</script>
<div class="stepInfo">
  <ul>
    <li></li>
    <li></li>
  </ul>
  <div class="stepIco stepIco1" name="info_name_1">1</div>
  <div class="info info_1" onmouseover="on_mous_move('info_name_1')" onmouseout="on_mous_out('info_name_1')">
    <strong name="info_name_1">打开冰箱</strong>
  </div>
  <div class="stepIco stepIco2" name="info_name_2">2</div>
  <div class="info info_2" onmouseover="on_mous_move('info_name_2')" onmouseout="on_mous_out('info_name_2')">
    <strong name="info_name_2">把大象放进去</strong>
  </div>
  <div class="stepIco stepIco3" name="info_name_3">3</div>
  <div class="info info_3" onmouseover="on_mous_move('info_name_3')" onmouseout="on_mous_out('info_name_3')">
    <strong name="info_name_3">关上冰箱</strong>
  </div>
</div>
</body>
</html>

总结

以上所述是小编给大家介绍的JS与HTML结合实现流程进度展示条,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
Google韩国首页图标动画效果
Aug 26 Javascript
jQuery+CSS实现菜单滑动伸展收缩(仿淘宝)
Mar 22 Javascript
浅析Javascript ES6新增值比较函数Object.is
Aug 24 Javascript
Bootstrap使用基础教程详解
Sep 05 Javascript
jQuery实现简单漂亮的Nav导航菜单效果
Mar 29 jQuery
vue.js实现用户评论、登录、注册、及修改信息功能
May 30 Javascript
vue select组件的使用与禁用实现代码
Apr 10 Javascript
浅谈AngularJS中$http服务的简单用法
May 15 Javascript
详解ES6 系列之异步处理实战
Oct 26 Javascript
微信小程序如何访问公众号文章
Jul 08 Javascript
vue+vant-UI框架实现购物车的复选框全选和反选功能
Nov 05 Javascript
Preload基础使用方法详解
Feb 03 Javascript
JS实现简单的选择题测评系统代码思路详解(demo)
Sep 03 #Javascript
JS实现页面内跳转的简单代码
Sep 03 #Javascript
初探JavaScript 面向对象(推荐)
Sep 03 #Javascript
jquery+css实现下拉列表功能
Sep 03 #jQuery
使用JavaScript实现点击循环切换图片效果
Sep 03 #Javascript
jQuery中.attr()和.data()的区别分析
Sep 03 #jQuery
Angular4表单验证代码详解
Sep 03 #Javascript
You might like
php生成图片缩略图的方法
2015/04/07 PHP
PHP写的简单数字验证码实例
2017/05/23 PHP
Laravel5.7 Eloquent ORM快速入门详解
2019/04/12 PHP
PHP7.0连接DB操作实例分析【基于mysqli】
2019/09/26 PHP
js form 验证函数 当前比较流行的错误提示
2009/06/23 Javascript
js post方式传递提交的实现代码
2010/05/31 Javascript
浅析JavaScript中的同名标识符优先级
2013/12/06 Javascript
JavaScript中用sort()方法对数组元素进行排序的操作
2015/06/09 Javascript
JS实现网页标题随机显示名人名言的方法
2015/11/03 Javascript
基于javascript实现根据身份证号码识别性别和年龄
2016/01/22 Javascript
页面向下滚动ajax获取数据的实现方法(兼容手机)
2016/05/24 Javascript
javascript验证手机号和实现星号(*)代替实例
2016/08/16 Javascript
Ionic 2 实现列表滑动删除按钮的方法
2017/01/22 Javascript
JS实现根据密码长度显示安全条功能
2017/03/08 Javascript
jQuery遍历节点方法汇总(推荐)
2017/05/13 jQuery
Vue filter介绍及其使用详解
2017/10/21 Javascript
webpack+vue中使用别名路径引用静态图片地址
2017/11/20 Javascript
详解vue-cli项目中的proxyTable跨域问题小结
2018/02/09 Javascript
JS中touchstart事件与click事件冲突的解决方法
2018/03/12 Javascript
vue form check 表单验证的实现代码
2018/12/09 Javascript
ES6中Symbol、Set和Map用法详解
2019/08/20 Javascript
layui 实现自动选择radio单选框(checked)的方法
2019/09/03 Javascript
python3 发送任意文件邮件的实例
2018/01/23 Python
Python 中 function(#) (X)格式 和 (#)在Python3.*中的注意事项
2018/11/30 Python
Python3搭建http服务器的实现代码
2020/02/11 Python
keras实现多GPU或指定GPU的使用介绍
2020/06/17 Python
美国机场停车位预订:About Airport Parking
2018/03/26 全球购物
加拿大服装和鞋类零售商:Mark’s
2021/01/04 全球购物
就业推荐表自我鉴定
2013/10/29 职场文书
护士毕业生自荐信
2014/02/07 职场文书
酒店销售经理岗位职责
2015/04/02 职场文书
2016年村党支部公开承诺书
2016/03/24 职场文书
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python
CSS3中Animation实现简单的手指点击动画的示例
2021/07/15 HTML / CSS
Python学习之迭代器详解
2022/04/01 Python
Android开发手册TextInputLayout样式使用示例
2022/06/10 Java/Android