32.利用DOM来解决图片的更改

1.<!DOCTYPE html>
<html>
    

<head>
        <meta charset="utf-8" />
        <title></title>
    </head>
        <script type="text/javascript">
                window.onload = function(){
                    var prev = document.getElementById("prev");
                    var next = document.getElementById("next");
                    var img = document.getElementsByTagName("img")[0];
                    prev.onclick = function(){
                        alert("上一张");
                        img.src = "img/QD%7DKHV1_43XSSHG$%7DFY%60%5D)1.png";
                    }
                    next.onclick = function(){
                        alert("下一张");
                        img.src = "img/BA3783F81F075BA20201777CB0CC7ABE.jpg";
                    }
                }
        </script>
    <body>
<!--         <img src="img/BA3783F81F075BA20201777CB0CC7ABE.jpg" >
 -->        <img src="O4JD%7B85EEITJIEUL2V%25Q$7G.png" width="200px"margin="50px" height="300px"text-align="center">
        <div id="outer">
            <button type="button"id="prev">上一张</button>
            <button type="button"id="next">下一张</button>
        </div>
    </body>
</html>

通过按上一张或者下一张来更改显示的图片

2.进阶

上图方法中,由于是耦合的,因此不方便操控,比如图片数被卡死了,那假如有10张图片呢?

因此,可以更改图片数、

修改之后的代码如下        

引入了CSS

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>
            
        </title>
        
        <style type="text/css">
            #picture{
             width:200px;
                margin:50px;
                height:300px; 
            }
        
            
        </style>
    </head>
        <script type="text/javascript">
                window.onload = function(){
                    var prev = document.getElementById("prev");
                    var next = document.getElementById("next");
                    var imgall = document.getElementsByTagName("img");
                    var img = imgall[0];
                    
                    var add = ["img/BA3783F81F075BA20201777CB0CC7ABE.jpg",
                    "img/C8F4AB0BE407EAF41A8374794BE98498.jpg","img/C16D31BB4E1AE9A9E82EB82235E9711F.jpg"];
                    var index = 0;
                    prev.onclick = function(){
                         
                        index--;
                        if(index >= 0){
                             
                        alert("马上进入"+"第"+(index+1)+"张");
                        img.src = add[index];
                    }else{
                        alert("现在已经是第一张了哦");
                        index++;
                    }
                    }
                    next.onclick = function(){
                        index++;
                        if(index < add.length){
                            alert("马上进入"+"第"+(index+1)+"张");
                            img.src = add[index];
                        }else{
                            alert("现在已经是最后一张了哦");
                            index--;
                        }
                        
                    }
                }
        </script>
    <body>
<!--         <img src="img/BA3783F81F075BA20201777CB0CC7ABE.jpg" >
 -->        <div id="aa" align="center"><img src="img/BA3783F81F075BA20201777CB0CC7ABE.jpg" id="picture"></div>
        <div id="outer"align="center">
            <button type="button"id="prev">上一张</button>
            <button type="button"id="next">下一张</button>
        </div>
    </body>
</html>

降低耦合度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值