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 相关文章推荐
W3C Group的JavaScript1.8 新特性介绍
May 19 Javascript
用 Javascript 验证表单(form)中的单选(radio)值
Sep 08 Javascript
jQuery-serialize()输出序列化form表单值的方法
Dec 26 Javascript
动态添加删除表格行的js实现代码
Feb 28 Javascript
纯JavaScript手写图片轮播代码
Oct 20 Javascript
微信小程序 HTTPS报错整理常见问题及解决方案
Dec 14 Javascript
Vue键盘事件用法总结
Apr 18 Javascript
Angular.js实现动态加载组件详解
May 28 Javascript
详解实现一个通用的“划词高亮”在线笔记功能
Apr 23 Javascript
js回溯法计算最佳旅行线路代码实例
Sep 11 Javascript
vue实现移动端拖动排序
Aug 21 Javascript
vue实力踩坑之push当前页无效
Apr 10 Vue.js
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
英雄试炼之肉山谷—引领RPG新潮流
2020/04/20 DOTA
用PHP中的 == 运算符进行字符串比较
2006/11/26 PHP
PHP常用的三种设计模式汇总
2016/08/28 PHP
javascript jQuery插件练习
2008/12/24 Javascript
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
javascript的创建多行字符串的7种方法
2014/04/29 Javascript
JQuery对表单元素的基本操作使用总结
2014/07/18 Javascript
js中this的用法实例分析
2015/01/10 Javascript
javascript页面倒计时实例
2015/07/25 Javascript
jquery代码规范让代码越来越好看
2017/02/03 Javascript
JS中SetTimeout和SetInterval使用初探
2017/03/23 Javascript
深究AngularJS中ng-drag、ng-drop的用法
2017/06/12 Javascript
老生常谈Bootstrap媒体对象
2017/07/06 Javascript
解决vue打包项目后刷新404的问题
2018/03/06 Javascript
微信小程序调用摄像头隐藏式拍照功能
2018/08/22 Javascript
Vue图片浏览组件v-viewer用法分析【支持旋转、缩放、翻转等操作】
2019/11/04 Javascript
使用Python的Tornado框架实现一个一对一聊天的程序
2015/04/25 Python
深入解析Python的Tornado框架中内置的模板引擎
2016/07/11 Python
matplotlib绘制符合论文要求的图片实例(必看篇)
2017/06/02 Python
python http基本验证方法
2018/12/26 Python
使用darknet框架的imagenet数据分类预训练操作
2020/07/07 Python
python单例模式的应用场景实例讲解
2021/02/24 Python
html5移动端自适应布局的实现
2020/04/15 HTML / CSS
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
自然健康的概念:Natural Healthy Concepts
2020/01/26 全球购物
PHP如何与mysql建立链接
2013/05/05 面试题
外贸业务员求职自荐信分享
2013/09/21 职场文书
写字楼租赁意向书
2014/07/30 职场文书
教师遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
校园广播稿精选
2014/10/01 职场文书
2014高三学生考试作弊检讨书
2014/12/14 职场文书
数据结构课程设计心得体会
2016/01/15 职场文书
创业计划书之服装
2019/10/07 职场文书
导游词之吉林吉塔
2019/11/11 职场文书
详解MySQL的半同步
2021/04/22 MySQL
windows server 2016 域环境搭建的方法步骤(图文)
2022/06/25 Servers