1. 程式人生 > >JQuery小案例

JQuery小案例

1.滑鼠移動到數字按鈕上後,圖片從有向左切入:

示例程式碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>JQuery案例練習</title>
    <style type="text/css">
/*清空所有的樣式*/
*{
            margin:0;
padding: 0;
border:0;
list-style:none;       /*去掉ulol中的樣式*/
}
        .all
{ width: 800px; height: 535px; margin: 100px auto; position: relative; /*子絕父相*/ overflow: hidden; } .all ul{ position: relative; /*子絕父相,它的子類通過絕對定位的方式讓圖片的原點和盒子的原點保持一致*/ z-index: 1; } /*通過定位的方式讓圖片的左上角位於盒子的左上角*/ .all ul li{ position: absolute; left: 0;
/*用來確定圖片的位置*/ top:0; } /*Z-index 僅能在定位元素上奏效(例如 position:absolute;)!說明該屬性設定一個定位元素沿 z 軸的位置, * z 軸定義為垂直延伸到顯示區的軸。如果為正數,則離使用者更近,為負數則表示離使用者更遠。 */ .all ol{ position: absolute; /*標準流中同級的olul只能按順序顯示,不能讓ol顯示在ul之上,所以採用定位的方式*/ z-index: 2; /*2>1,ol顯示在ul之上*/ right: 20px;
bottom: 10px; } .all ol li{ width: 20px; height: 20px; background-color: #333; border: 1px solid #cccccc; font-weight: bold; text-align: center; /*水平居中*/ line-height: 20px; /*垂直居中*/ float: left; /*讓所有ol裡面的li水平顯示*/ margin-left: 10px; /*lili之間有一定的間距*/ color: #cccccc; /*字型的顏色*/ margin-top: 10px; /*解決current的方塊變大後,其他的色塊位置相對上移的問題*/ cursor: pointer; /*滑鼠移動到上面顯示小手*/ } .all ol .current{ width: 30px; height: 30px; color: #f60; /* 字型的顏色*/ border: 1px solid #ff6600; line-height: 30px; margin-top: 0; /*當前的色塊的margin-top0,之前的為10,因為當前的色塊比之前的大了10px*/ } </style> <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script> <script type="text/javascript"> $(function(){ var num2=6; //第一步,通過$符程式碼分離 $('ol li').mouseover(function(e){ //當滑鼠移動到ol裡面的li的時候,執行操作 $(this).attr('class','current'); //當前的li它的類變為current,也就是樣式發生變化 $(this).siblings().attr('class',''); //當前li的兄弟li的類置空 var num=$(this).index() //獲取到當前的ol liindex//因為讓圖片從右邊過來,所以一開始先讓它位於當前圖片的右側,也就是left=圖片的width $('ul li').eq(num).css('left','800px'); num2++ $('ul li').eq(num).css('z-index',num2); //注意此處的num2是引數,不需要加'' $('ul li').eq(num).animate({left:'0'},500); }); }) </script> </head> <body> <div class="all"> <ul > <li><img src="images/04.png"></li> <li><img src="images/05.png"></li> <li><img src="images/06.png"></li> <li><img src="images/01.png"></li> <li><img src="images/02.png"></li> </ul> <ol> <!--裡面記得寫數字,不然就只有空的方塊了--> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li class="current">5</li> </ol> </div> </body> </html>
執行效果:(如下圖所示,第5張圖片正在進入)


2.案例2(突出顯示某一部分內容)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>突出顯示某一部分</title>
    <style type="text/css">
*{
            margin:0;
padding:0;
list-style: none;   /*清空ul li 的樣式*/
}
        div{
            margin:100px auto;
width: 1204px;
height: 580px;
border: 2px solid #e3e3e3;
}

        img{
            width: 400px;
height: 288px;
float: left;
/*margin-right: 20px;*/
            /*margin-bottom: 20px;*/
padding: 10px;
box-sizing: border-box;
}
    </style>
    <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
    <script type="text/javascript">
$(function(){
            $('li').mouseover(function(e){
                //當滑鼠移到某一個li的時候,該li的兄弟li的透明度降低
$(this).siblings().stop().fadeTo(500,0.3);  //透明度在500m內淡入到0.3
});
//            當滑鼠移後,該li(this)的兄弟li的透明度恢復預設
$('li').mouseout(function(e){
                //stop()解決JQuery的排隊問題,也就是滑鼠快速的亂滑之後移開,狀態不會持續的進行
$(this).siblings().stop().fadeTo(500,1);   //透明度恢復到預設值1
});
})
    </script>
</head>
<body>
  <div>
      <ul>
          <li><a href="#"><img  src="images/daiyu.png"></a></li>
          <li><a href="#"><img  src="images/baochai.jpg"></a></li>
          <li><a href="#"><img  src="images/xiangyun.jpg"></a></li>
          <li><a href="#"><img  src="images/tanchun.jpg"></a></li>
          <li><a href="#"><img  src="images/wangxifeng.jpg"></a></li>
          <li><a href="#"><img  src="images/liwan.jpg"></a></li>
      </ul>
  </div>
</body>
</html>

執行效果:

1)頁面開啟後:


2)滑鼠移動到其中一幅圖上面,


3)當滑鼠離開後,又恢復到預設。

3.fadeIn() :淡入

fadeOut():淡出

fadeTo()

4.siblings() 獲取到兄弟類

5.stop()    解決JQuery排隊問題。