网页中JS函数自动执行的方法

网页中JS函数自动执行的三种方法

实现网页中的图片轮播要求:
在页面中显示一组图片,默认显示第一张,每隔n秒换一张图片

  • 在body标签中使用onload<body onload="method()">
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>图片轮播</title>
    <script type="text/javascript">
       function start() {
           var img01 = document.getElementById("img01");
           var ary = ["1.jpeg", "2.jpeg", "3.jpeg", "4.jpeg",
               "5.jpeg", "6.jpeg" ];
           var index = 0;
           window.setInterval(function(){
               img01.src = "images/" + ary[index++%ary.length];
               //0 1 2 3 4 5, 6 7 8 9  ...
               //0 1 2 3 4 5  0 1 2 3 ...
           }, 2000)
       }

    </script>
</head>
<body onload="start()">
    <h1>图片轮播</h1>
<img id="img01" src="img/1.jpeg" height="500" />
</body>
</html>
  • 在脚本中使用window.onload
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>图片轮播</title>
    <script type="text/javascript">
       window.onload= function start() {
           var img01 = document.getElementById("img01");
           var ary = ["1.jpeg", "2.jpeg", "3.jpeg", "4.jpeg",
               "5.jpeg", "6.jpeg" ];
           var index = 0;
           window.setInterval(function(){
               img01.src = "images/" + ary[index++%ary.length];
               //0 1 2 3 4 5, 6 7 8 9  ...
               //0 1 2 3 4 5  0 1 2 3 ...
           }, 2000)
       }

    </script>
</head>
<body >
    <h1>图片轮播</h1>
<img id="img01" src="img/1.jpeg" height="500" />
</body>
</html>
  • 在页面先声明在页面底部调用方法
    浏览器是从上到下依次加载并解析页面的,所以加载到head时,body并没有被解析,浏览器会等到js执行完成之后再加载页面,所以方法的执行要放在页面底端。
    如果直接在head中的script中直接加入start(),那么img01=null

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>图片轮播</title>
<style type="text/css">
div {
    margin: 0 auto;
    text-align: center;
}
</style>
<script type="text/javascript">
function start(){
    var img01 = document.getElementById("img01");
    var ary = ["1.jpeg", "2.jpeg", "3.jpeg", "4.jpeg", 
                                "5.jpeg", "6.jpeg" ];
    var index = 0;

    window.setInterval(function(){

        img01.src = "images/" + ary[index++%ary.length]; 
                        //0 1 2 3 4 5, 6 7 8 9  ...
                        //0 1 2 3 4 5  0 1 2 3 ...

    }, 2000)
}
</script>
</head>
<body>
    <div>
        <h1>图片轮播</h1>
        <img id="img01" src="images/1.jpeg" height="500" />
    </div>
</body>
</html>
<script type="text/javascript">
start();
</script>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值