亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

利用jquery去掉時(shí)光軸頭尾部線條的方法實(shí)例

 更新時(shí)間:2017年06月16日 08:51:49   作者:正是澤  
這篇文章主要給大家介紹了利用jquery實(shí)現(xiàn)去掉時(shí)光軸頭尾部線條的方法,文中給出了詳細(xì)的實(shí)例代碼供大家參考學(xué)習(xí),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。

前言

以前做類似時(shí)光軸的結(jié)構(gòu),幾乎都是一條灰色線飛流直下,沒(méi)有盡頭。今天這個(gè)線條是從第一個(gè)圓點(diǎn)到最后一個(gè)圓點(diǎn),那么問(wèn)題來(lái)了,內(nèi)容的高度還不是固定的,線條的長(zhǎng)度怎么確定?怎么就能剛剛好從第一個(gè)點(diǎn)到最后一個(gè)點(diǎn)首尾相連呢?這就是下面所要做的。

先看效果,如下圖:

思路:

  1、寫(xiě)一個(gè)div包住整個(gè)內(nèi)容,就能知道所有列表的總高度;

  2、寫(xiě)一條細(xì)線定位到右邊,對(duì),高度100%,內(nèi)容多高,細(xì)線就多高;

  3、開(kāi)始的小點(diǎn)距離頂部多高,細(xì)線就距離頂部多高;

  4、使用js設(shè)置細(xì)線的高度 = 總高度 - 最后一個(gè)列表的高度;

  ?。。∈裁矗??看不懂??沒(méi)關(guān)系,那我總結(jié)成一句話:細(xì)線的高度減掉最后一個(gè)內(nèi)容的高度就剛剛好。

實(shí)現(xiàn)方法

第一步:寫(xiě)結(jié)構(gòu)

<div class="line_box">
  <div class="line"></div>
  <ul>
   <li><i></i>就是這么帥,就是這么不要臉!寫(xiě)多長(zhǎng)都沒(méi)關(guān)系,反正右邊線條會(huì)自適應(yīng)!<span></span></li>
   <li><i></i>沒(méi)辦法,就是這么帥,就是這么叼!<span></span></li>
   <li><i></i>帥到自然醒,帥到閃到腰!<span></span></li>
  </ul>
 </div>

  (1) 定一條灰色細(xì)線.line

  (2) 每一個(gè)內(nèi)容就是一個(gè)li

  (3) i就是那個(gè)三角形(什么??不會(huì)用CSS畫(huà)三角形?百度一下,你就知道了)

  (4) span 就是那個(gè)小紅點(diǎn)

第二步:寫(xiě)樣式

<style type="text/css">
 .line_box {width: 200px;margin: 0 auto;position: relative;}
 .line {width: 2px;height: 100%;background-color: #ccc;position: absolute;left: 0;top: 20px;}
 ul {padding-left: 20px;}
 li { padding: 10px;background-color: #cb3636;color: #fff;position: relative;margin-bottom: 20px;}
 li i {border: 10px solid;border-color:transparent #cb3636 transparent transparent;position: absolute;left: -18px;top: 10px;}
 li span {width:10px;height: 10px;background-color:#cb3636; position: absolute;left: -24px;top: 15px;border-radius: 50%;}
</style>

  (1) 好像沒(méi)什么要說(shuō)的。。。

  (2) 哈哈,想到了。畫(huà)三角形的原理就是把一條邊框設(shè)置為紅色,其它三邊都設(shè)置為透明,就像這樣:

    border-color:transparent red transparent transparent; 方向依次為 上 右 下 左

第三步:寫(xiě)js代碼

(function hei(){

 var li = $("li"),
  len = li.length,
  he = $(".line_box").outerHeight(),
  old = li.eq(len - 1).outerHeight();

 $(".line").height( Number(he) - Number(old) );

}());

  (1) 獲取最外層的高度he

  (2) 再獲取最后一個(gè)內(nèi)容的高度old

  (3) 最總的高度就是(1) - (2)

  (4) 這里之所以用outerHeight(),就是想把padding和border的高度也算進(jìn)來(lái)

總結(jié):

本次使用的是總高度減去最后一個(gè)內(nèi)容的高度來(lái)算出細(xì)線的高度,當(dāng)然還有其它的辦法,不過(guò)最好還是加個(gè)resize監(jiān)聽(tīng)瀏覽器變化就重新設(shè)置細(xì)線的高度就比較完善了。

這里使用百度CDN:

<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>

完整的代碼為:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<style type="text/css">
.line_box {width: 200px;margin: 0 auto;position: relative;}
.line {width: 2px;height: 100%;background-color: #ccc;position: absolute;left: 0;top: 20px;}
ul {padding-left: 20px;}
li { padding: 10px;background-color: #cb3636;color: #fff;position: relative;margin-bottom: 20px;}
li i {border: 10px solid;border-color:transparent #cb3636 transparent transparent;position: absolute;left: -18px;top: 10px;}
li span {width:10px;height: 10px;background-color:#cb3636; position: absolute;left: -24px;top: 15px;border-radius: 50%;}
</style>
</head>
<body>
<div class="line_box">
 <div class="line"></div>
 <ul>
  <li><i></i>就是這么帥,就是這么不要臉!就是這么帥,就是這么不要臉!<span></span></li>
  <li><i></i>沒(méi)辦法,就是這么帥,就是這么叼!<span></span></li>
  <li><i></i>帥到自然醒,帥到閃到腰!<span></span></li>
 </ul>
</div>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
$(function(){

(function hei(){

 var li = $("li"),
  len = li.length,
  he = $(".line_box").outerHeight(),
  old = li.eq(len - 1).outerHeight();

 $(".line").height( Number(he) - Number(old) );

}());

})

</script>
</body>
</html>

好了,以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論