純CSS 多圖片輪播

今天作東西的時候,遇到一個問題關於圖片輪播的問題,之前也接觸過(百度 人家的demo改改。。),再次遇到這個問題的時候,根據之前的印象找到了demo正信心滿滿的準備改一下嵌進去,發現 jquery.min.js 這個總是衝突,改來改去也沒改好,水平也很差弄了半天放棄了(主要Jquery真的太弱了,要好好補補這方面的知識了:(   ),最後想,進度仍是要下去的,也不能由於一個問題而致使本身的任務進度慢下來,只好退而求其餘的,最後瞄準了CSS寫的輪播。效果以下:css

原網址:http://www.codefans.net/jscss/code/124.shtmlhtml

 

CSS代碼:jquery

 1 .rollBox{width:704px;overflow:hidden;padding:12px 0 5px 6px;}
 2 .rollBox .LeftBotton{height:52px;width:19px;background:url(images/tab_l.gif) no-repeat 6px 0;overflow:hidden;float:left;display:inline;margin:25px 0 0 0;cursor:pointer;}
 3 .rollBox .RightBotton{height:52px;width:20px;background:url(images/tab_r.gif) no-repeat 5px 0;overflow:hidden;float:left;display:inline;margin:25px 0 0 0;cursor:pointer;}
 4 .rollBox .Cont{width:530px;overflow:hidden;float:left;}
 5 .rollBox .ScrCont{width:10000000px;}
 6 .rollBox .Cont .pic{width:132px;float:left;text-align:center;}
 7 .rollBox .Cont .pic img{padding:4px;background:#fff;border:1px solid #ccc;display:block;margin:0 auto;}
 8 .rollBox .Cont .pic p{line-height:26px;color:#505050;}
 9 .rollBox .Cont a:link,.rollBox .Cont a:visited{color:#626466;text-decoration:none;}
10 .rollBox .Cont a:hover{color:#f00;text-decoration:underline;}
11 .rollBox #List1,.rollBox #List2{float:left;}

JS代碼url

 1 //圖片滾動列表 mengjia 070816
 2 var Speed = 1; //速度(毫秒)
 3 var Space = 5; //每次移動(px)
 4 var PageWidth = 528; //翻頁寬度
 5 var fill = 0; //總體移位
 6 var MoveLock = false;
 7 var MoveTimeObj;
 8 var Comp = 0;
 9 var AutoPlayObj = null;
10 GetObj("List2").innerHTML = GetObj("List1").innerHTML;
11 GetObj('ISL_Cont').scrollLeft = fill;
12 GetObj("ISL_Cont").onmouseover = function(){clearInterval(AutoPlayObj);}
13 GetObj("ISL_Cont").onmouseout = function(){AutoPlay();}
14 AutoPlay();
15 function GetObj(objName){if(document.getElementById){return eval('document.getElementById("'+objName+'")')}else{return eval('document.all.'+objName)}}
16 function AutoPlay(){ //自動滾動
17     clearInterval(AutoPlayObj);
18     AutoPlayObj = setInterval('ISL_GoDown();ISL_StopDown();',3000000); //間隔時間
19 }
20 function ISL_GoUp(){ //上翻開始
21     if(MoveLock) return;
22     clearInterval(AutoPlayObj);
23     MoveLock = true;
24     MoveTimeObj = setInterval('ISL_ScrUp();',Speed);
25 }
26 function ISL_StopUp(){ //上翻中止
27     clearInterval(MoveTimeObj);
28     if(GetObj('ISL_Cont').scrollLeft % PageWidth - fill != 0){
29         Comp = fill - (GetObj('ISL_Cont').scrollLeft % PageWidth);
30         CompScr();
31     }else{
32         MoveLock = false;
33     }
34     AutoPlay();
35 }
36 function ISL_ScrUp(){ //上翻動做
37     if(GetObj('ISL_Cont').scrollLeft <= 0){GetObj('ISL_Cont').scrollLeft = GetObj('ISL_Cont').scrollLeft + GetObj('List1').offsetWidth}
38     GetObj('ISL_Cont').scrollLeft -= Space ;
39 }
40 function ISL_GoDown(){ //下翻
41     clearInterval(MoveTimeObj);
42     if(MoveLock) return;
43     clearInterval(AutoPlayObj);
44     MoveLock = true;
45     ISL_ScrDown();
46     MoveTimeObj = setInterval('ISL_ScrDown()',Speed);
47 }
48 function ISL_StopDown(){ //下翻中止
49     clearInterval(MoveTimeObj);
50     if(GetObj('ISL_Cont').scrollLeft % PageWidth - fill != 0 ){
51         Comp = PageWidth - GetObj('ISL_Cont').scrollLeft % PageWidth + fill;
52         CompScr();
53     }else{
54         MoveLock = false;
55     }
56     AutoPlay();
57 }
58 function ISL_ScrDown(){ //下翻動做
59     if(GetObj('ISL_Cont').scrollLeft >= GetObj('List1').scrollWidth){GetObj('ISL_Cont').scrollLeft = GetObj('ISL_Cont').scrollLeft - GetObj('List1').scrollWidth;}
60     GetObj('ISL_Cont').scrollLeft += Space ;
61 }
62 function CompScr(){
63     var num;
64     if(Comp == 0){MoveLock = false;return;}
65     if(Comp < 0){ //上翻
66         if(Comp < -Space){
67             Comp += Space;
68             num = Space;
69         }else{
70             num = -Comp;
71             Comp = 0;
72         }
73         GetObj('ISL_Cont').scrollLeft -= num;
74         setTimeout('CompScr()',Speed);
75     }else{ //下翻
76         if(Comp > Space){
77             Comp -= Space;
78             num = Space;
79         }else{
80             num = Comp;
81             Comp = 0;
82         }
83         GetObj('ISL_Cont').scrollLeft += num;
84         setTimeout('CompScr()',Speed);
85     }
86 }

html代碼  只須要放在body中就OK了spa

 1 <div class="rollBox">
 2      <div class="LeftBotton" onmousedown="ISL_GoUp()" onmouseup="ISL_StopUp()" onmouseout="ISL_StopUp()"></div>
 3      <div class="Cont" id="ISL_Cont">
 4       <div class="ScrCont">
 5        <div id="List1">
 6        
 7         <!-- 圖片列表 begin -->
 8          <div class="pic">
 9           <a href="/" target="_blank"><img src="images/b1.jpg" width="109" height="87" /></a>
10          </div>       
11          <div class="pic">
12           <a href="/" target="_blank"><img src="images/b2.jpg" width="109" height="87"  /></a>
13          </div>
14          <div class="pic">
15           <a href="/" target="_blank"><img src="images/b3.jpg" width="109" height="87" /></a>
16          </div>
17          <div class="pic">
18           <a href="/" target="_blank"><img src="images/b4.jpg" width="109" height="87" /></a>
19          </div>
20          <div class="pic">
21           <a href="/" target="_blank"><img src="images/b5.jpg" width="109" height="87" /></a>
22          </div>
23         <!-- 圖片列表 end -->
24         
25        </div>
26        <div id="List2"></div>
27       </div>
28      </div>
29      <div class="RightBotton" onmousedown="ISL_GoDown()" onmouseup="ISL_StopDown()" onmouseout="ISL_StopDown()"></div>
30     </div>
31    </div>

大概的效果就是如上面圖片所示。.net

 

記錄一下,方便之後查看!code

相關文章
相關標籤/搜索