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 相关文章推荐
SWFObject Flash js调用类
Jul 08 Javascript
jquery插件制作 提示框插件实现代码
Aug 17 Javascript
jquery和雅虎的yql服务实现天气预报服务示例
Feb 08 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
Dec 03 Javascript
以WordPress为例讲解jQuery美化页面Title的方法
May 23 Javascript
AngularJS基础 ng-init 指令简单示例
Aug 02 Javascript
jquery中用jsonp实现搜索框功能
Oct 18 Javascript
老生常谈js中的MVC
Jul 25 Javascript
详解Webpack + ES6 最新环境搭建与配置
Jun 04 Javascript
vue基础之使用get、post、jsonp实现交互功能示例
Mar 12 Javascript
深入解析Vue源码实例挂载与编译流程实现思路详解
May 05 Javascript
解析原生JS getComputedStyle
May 25 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
从零开始学YII2框架(三)扩展插件yii2-gird
2014/08/20 PHP
PHP实现的微信公众号扫码模拟登录功能示例
2019/05/30 PHP
深入理解javascript的执行顺序
2014/04/04 Javascript
JavaScript使用cookie记录临时访客信息的方法
2015/04/07 Javascript
java中String类型变量的赋值问题介绍
2016/03/23 Javascript
Javascript之BOM(window对象)详解
2016/05/25 Javascript
原生JS实现网络彩票投注效果
2016/09/25 Javascript
Windows环境下npm install 报错: operation not permitted, rename的解决方法
2016/09/26 Javascript
javascript构造函数以及原型对象的理解
2017/01/13 Javascript
浅谈js for循环输出i为同一值的问题
2017/03/01 Javascript
浅谈javascript的url参数parse和build函数
2017/03/04 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
vue.js template模板的使用(仿饿了么布局)
2018/08/13 Javascript
关于vue状态过渡transition不起作用的原因解决
2019/04/09 Javascript
JavaScript使用百度ECharts插件绘制饼图操作示例
2019/11/26 Javascript
JavaScript如何判断对象有某属性
2020/07/03 Javascript
vue-以文件流-blob-的形式-下载-导出文件操作
2020/08/07 Javascript
[03:08]Ti4观战指南上
2014/07/07 DOTA
[54:17]DOTA2-DPC中国联赛定级赛 RNG vs iG BO3第二场 1月10日
2021/03/11 DOTA
Python的Django框架中的Context使用
2015/07/15 Python
使用Python实现一个栈判断括号是否平衡
2018/08/23 Python
python 进程间数据共享multiProcess.Manger实现解析
2019/09/23 Python
css3 响应式媒体查询的示例代码
2019/09/25 HTML / CSS
如何查看浏览器对html5的支持情况
2020/12/15 HTML / CSS
Omio波兰:全欧洲低价大巴、火车和航班搜索和比价
2018/02/16 全球购物
美国名牌手表折扣网站:Jomashop
2020/05/22 全球购物
介绍一下JNDI的基本概念
2013/07/26 面试题
广告学专业应届生求职信
2013/10/01 职场文书
优秀志愿者事迹材料
2014/02/03 职场文书
安全标兵事迹材料
2014/08/17 职场文书
机票销售员态度不好检讨书
2014/09/27 职场文书
2014年食品安全工作总结
2014/12/04 职场文书
处罚决定书范文
2015/06/24 职场文书
好人好事新闻稿
2015/07/17 职场文书
百日宴上的祝酒词
2015/08/10 职场文书
详解python的内存分配机制
2021/05/10 Python