zoukankan      html  css  js  c++  java
  • js

    思路:

    总结:
    1. 给循环与否设置标识 isLoop ,true为循环
    2. 下一张到最后一张的时候, 循环则 index 变成0 , 否则停留在最后一张,下标为arrImg.length-1
        上一张到第一张的时候, 循环则跑到最后一张, 否则停留在第一张
    3.当下标发生变化的时候, 哪些东西要改变? 图片 , 图片顶部的文字, 图片下面的文字信息
    

    1. 效果

    2. 代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            p { margin:0; }
            body { text-align:center; }
            #box { 400px; height:400px; border:10px solid #ccc; margin:50px auto 0; position:relative; }
            a { 40px; height:40px; background:#fff; filter:alpha(opacity:80); opacity:0.8; position:absolute; top:160px; font-size:18px; color:#000; text-align:center; line-height:40px; text-decoration:none; }
            a:hover { filter:alpha(opacity:30); opacity:0.3; }
            #prev { left:10px; }
            #next { right:10px; }
            #p1 { 400px; height:30px; line-height:30px; text-align:center; background:#000; color:#fff; font-size:14px; filter:alpha(opacity:80); opacity:0.8; position:absolute; bottom:0; left:0; }
            strong { 400px; height:30px; line-height:30px; text-align:center; background:#000; color:#fff; font-size:14px; filter:alpha(opacity:80); opacity:0.8; position:absolute; top:0; left:0; }
            #img1 { 400px; height:400px; }
            span { position:absolute; 400px; height:30px; line-height:30px; text-align:center; top:-50px; left:0; font-family:'微软雅黑'; }
        </style>
    </head>
    <body>
    <input type="button" value="循环播放图片">
    <input type="button" value="顺序播放图片">
    
    <div id="box">
        <span>图片可从最后一张跳转到第一张循环切换</span>
        <a id="prev" href="javascript:;"><</a>
        <a id="next" href="javascript:;">></a>
        <p id="p1">图片文字加载中...</p>
        <strong id="strong1">图片数量计算中...</strong>
        <img id="img1">
    </div>
    <script>
        window.onload = function () {
            var aBtn = document.getElementsByTagName('input')
            var oSpan = document.getElementsByTagName('span')
            var oPrev = document.getElementById('prev')
            var oNext = document.getElementById('next')
            var oP = document.getElementById('p1')
            var oStrong = document.getElementById('strong1')
            var oImg = document.getElementById('img1')
            var arrImg = ['img/1.png','img/2.png','img/3.png','img/4.png',]
            var arrText = [ '文字一', '文字二', '文字三', '图片4' ];
            var index = 0;
            var isLoop = true;
    
            init();
            aBtn[0].onclick = function () {
                isLoop = true;
                oSpan[0].innerHTML = '循环轮播 :图片可从最后一张跳转到第一张循环切换';
                oSpan[0].style.color = 'red';
            }
            aBtn[1].onclick = function () {
                isLoop = false;
                oSpan[0].innerHTML = '顺序:图片只能到最后一张或只能到第一张切换';
                oSpan[0].style.color = 'red';
            }
    
            oNext.onclick = function () {
                index++;
                if (index == arrImg.length){
                    isLoop ? index = 0 : index = arrImg.length-1;
                }
                init();
            }
    
            oPrev.onclick = function () {
                index--;
                if (index == -1){
                    isLoop ? index = arrImg.length - 1 : index = 0;
                }
                init();
            }
    
            function init() {
                oP.innerHTML = arrText[index];
                oImg.src = arrImg[index];
                oStrong.innerHTML = (index+1)+ '/' + arrImg.length;
            }
        }
    </script>
    </body>
    </html>
    
  • 相关阅读:
    HTML的<head>中的内容总结
    毕业设计
    win7中protel99添加元件库
    E题
    D 题
    C 题 KMP中next[]问题
    B题 Sort the Array
    A题
    CSU1350 To Add which?
    CodeForce 448C 木片填涂问题
  • 原文地址:https://www.cnblogs.com/bravolove/p/5980019.html
Copyright © 2011-2022 走看看