首頁  >  文章  >  web前端  >  JS與HTML結合實作流程進度條展示方法介紹

JS與HTML結合實作流程進度條展示方法介紹

巴扎黑
巴扎黑原創
2017-09-04 09:27:492607瀏覽

基於js與html結合實現的流程進度展示條,非常實用,在各大網站都可以用到,下面小編給大家帶來了JS與HTML結合實現流程進度展示條思路詳解,需要的朋友參考下吧

效果如下:

JS與HTML結合實作流程進度條展示方法介紹

#一、設計想法

分為以下幾步(僅供參考)

【豎線線】

這個採用ul的list標籤製作,保證了可隨時添加,以及縱向排布

【小圓圈】

html標籤好像沒有提供小圓圈標籤,此處採用,p添加弧度角完成,,正方形的p添加弧度等於p的長(或者寬),就能夠實現小圓圈。帶子就更簡單了,,p裡直接添加文字即可

【文字】

文字要求緊跟小圓圈,,且與小圓圈保持同一水平高度,此處採用, 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 p_info = document.getElementsByName(name)[0];
    p_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 p_info = document.getElementsByName(name)[0];
    p_info.style.backgroundColor = "#45a0f3";
  }
</script>
<p class="stepInfo">
  <ul>
    <li></li>
    <li></li>
  </ul>
  <p class="stepIco stepIco1" name="info_name_1">1</p>
  <p class="info info_1" onmouseover="on_mous_move(&#39;info_name_1&#39;)" onmouseout="on_mous_out(&#39;info_name_1&#39;)">
    <strong name="info_name_1">打开冰箱</strong>
  </p>
  <p class="stepIco stepIco2" name="info_name_2">2</p>
  <p class="info info_2" onmouseover="on_mous_move(&#39;info_name_2&#39;)" onmouseout="on_mous_out(&#39;info_name_2&#39;)">
    <strong name="info_name_2">把大象放进去</strong>
  </p>
  <p class="stepIco stepIco3" name="info_name_3">3</p>
  <p class="info info_3" onmouseover="on_mous_move(&#39;info_name_3&#39;)" onmouseout="on_mous_out(&#39;info_name_3&#39;)">
    <strong name="info_name_3">关上冰箱</strong>
  </p>
</p>
</body>
</html>

以上是JS與HTML結合實作流程進度條展示方法介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn