CSS+JS ————实现简单的轮播图效果

朴灿烈づ我的快乐病毒、 2023-05-30 06:01 77阅读 0赞
  1. 效果可能不是太好
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <title></title>
  6. <style type= "text/css">
  7. #top_img{
  8. width: 500px;
  9. height:400px;
  10. margin: 0 auto;
  11. border:1px solid black;
  12. background-size:500px 400px;
  13. transition:background-image 0.8s ease-in-out;/* 设置过渡效果*/
  14. position: relative;
  15. top:0;
  16. left: 0;
  17. }
  18. ul{
  19. position:absolute;
  20. bottom:0;
  21. }
  22. li{
  23. float: left;
  24. width: 10px;
  25. height: 10px;
  26. margin-left:10px;
  27. list-style-type: none;
  28. }
  29. .d{
  30. width:10px;
  31. height: 10px;
  32. border-radius:5px;
  33. background:#fff;
  34. }
  35. </style>
  36. </head>
  37. <body>
  38. <div id = "top_img">
  39. <ul >
  40. <li class = "li"><div class = "d"></div> </li>
  41. <li class = "li"> <div class = "d"></div></li>
  42. <li class = "li"> <div class = "d"></div></li>
  43. <li class = "li"> <div class = "d"></div></li>
  44. </ul>
  45. </div>
  46. <script type="text/javascript" >
  47. var imgPath = new Array("0039.jpg", "0040.jpg", "0041.jpg", "0042.jpg");// 图片路径数组
  48. var top_img = $("top_img");
  49. var len = imgPath.length;
  50. var now = len-1, last = 0;// now 表示本次小点的序号 last 表示上一个图片的小点
  51. function getLast(now){ //获取last
  52. return ((now-1)%len+len)%len;
  53. }
  54. function $(id){ // 通过id 获取对象的函数
  55. return document.getElementById(id);
  56. }
  57. function changeImage(){
  58. now++;
  59. if(now >= len)now = 0;
  60. top_img.style.backgroundImage = "url("+imgPath[now]+")"; // 改变图片
  61. last = getLast(now);
  62. document.getElementsByClassName("d")[last].style.backgroundColor = "#fff";// 取消上一个小点的红色
  63. document.getElementsByClassName("d")[now].style.background = "red";// 设置本次小点为红色
  64. }
  65. var interval1 = window.setInterval("changeImage()", 2000); // 每过两秒调用 函数
  66. </script>
  67. </body>
  68. </html>

发表评论

表情:
评论列表 (有 0 条评论,77人围观)

还没有评论,来说两句吧...

相关阅读