基於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('info_name_1')" onmouseout="on_mous_out('info_name_1')"> <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('info_name_2')" onmouseout="on_mous_out('info_name_2')"> <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('info_name_3')" onmouseout="on_mous_out('info_name_3')"> <strong name="info_name_3">关上冰箱</strong> </p> </p> </body> </html>
以上是JS與HTML結合實作流程進度條展示方法介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!