BOM(一)

1.    // load 等页面内容全部加载完毕,包含页面dom元素图片flash css等等
       // DOMContentLoaded 是DOM加载完毕,不包含图片falsh css等就可以执行加载速度比load更快一些

window . addEventListener( ' load', function() {
alert(22);
})
document . addEventListener( ' DOMContentLoaded',function() {
alert(33);
})

2.onresize调整窗口大小事件

var div = document . querySelector( 'div' );
window . addEventListener(' resize',function() {
console.1og('变化了');
if (window. innerWidth <= 800) {
div.style.display = 'none' ;
}
else{
div.style.display = 'block' ;
}
}//窗口小于800隐藏div

3  window. setTimeout(调用函数,延时时间)调用一次;window. setInterval(调用函数,延时时间)调用很多次;
//1.这个window在调用的时候可以省略
// 2.这个延时时间单位是毫秒但是可以省略,如果省略默认的是0

//第一种写法
setTimeout( function() {
console.1og('时间到了'); },2000) ;

//第二种写法
function callback() {
console.1og('爆炸了');
setTimeout(callback, 3000);

//页面中可能有很多的定时器,我们经常给定时器加标识符 (名字)
var time1=setTimeout(callback, 3000);
var time2=setTimeout(callback, 3000);

//五秒后自动隐藏图片
<img src="images/ad.jpg" alt="" class="ad">
<script>
var ad = document . querySelector( ' .ad' );
setTimeout( function() {
ad. style.display = ' none' ;
}, 5000);
<script>

4. clearTimeout (timeout ID)名字  clearInterval(timeout ID)名字 停止计时器

< button>点击停止定时器</button>
<script>
var btn = document . querySelector( 'button' );
var timer = setTimeout( function() {
console.1og( '爆炸了');
}, 5000);
btn . addEventL istener( 'click', function() {
clearTimeout(timer);
})
</ script>

 在函数作用域中可以访问到全局作用域的变量,在函数外无法访问到函数作用域内的变量

在函数作用域中访问变量、函数时,会先在自身作用域中寻找,若没有找到,则会到函数的上一级作用域中寻找,一直到全局作用域(timer)

var begin = document . querySelector(' .begin' );
var stop = document . querySelector(' .stop');
var timer = null; //全局变量 nu11是一个空对象
begin. addEventListener( 'click', function() {
timer = setInterval(function() {
console.1og('ni hao ma ' );
}, 1000);
})
stop. addEventListener( 'click', function() {
clearInterval(timer);
})

5.倒计时  动态的刷新不需要点刷新键

<style>
        div {
            margin: 200px;
        }
        
        span {
            display: inline-block;
            width: 40px;
            height: 40px;
            background-color: #333;
            font-size: 20px;
            color: #fff;
            text-align: center;
            line-height: 40px;
        }
    </style>

    <div>
        <span class="hour">1</span>
        <span class="minute">2</span>
        <span class="second">3</span>
    </div>
    <script>
        // 1. 获取元素 
        var hour = document.querySelector('.hour'); // 小时的黑色盒子
        var minute = document.querySelector('.minute'); // 分钟的黑色盒子
        var second = document.querySelector('.second'); // 秒数的黑色盒子
        var inputTime = +new Date('2022-3-9 18:00:00'); // 返回的是用户输入时间总的毫秒数
        countDown(); // 我们先调用一次这个函数,防止第一次刷新页面有空白 
        // 2. 开启定时器
        setInterval(countDown, 1000);

        function countDown() {
            var nowTime = +new Date(); // 返回的是当前时间总的毫秒数
            var times = (inputTime - nowTime) / 1000; // times是剩余时间总的秒数 
            var h = parseInt(times / 60 / 60 ); //时
            h = h < 10 ? '0' + h : h;
            hour.innerHTML = h; // 把剩余的小时给 小时黑色盒子
            var m = parseInt(times / 60 % 60); // 分
            m = m < 10 ? '0' + m : m;
            minute.innerHTML = m;
            var s = parseInt(times % 60); // 当前的秒
            s = s < 10 ? '0' + s : s;
            second.innerHTML = s;
        }
    </script>

6.发送短信

<body>
    手机号码: <input type="number"> <button>发送</button>
    <script>
        var a=document.querySelector('input')
        var b=document.querySelector('button')
        var t=3
        b.addEventListener('click', function(){    
            var time=setInterval(function(){
                 if(t==0){ 
                 b.innerHTML=('发送') 
                 b.disabled=false//这不能写this.disabled=false,此时this指向                                        
                                              // window,Window.setInterval
                 t=3
                 clearInterval(time)
            }
           else{
                 b.innerHTML=('请等待'+t+'秒')
                 b.disabled=true
                 t--
           }
            },1000)
        })
    </script>

 7.5秒后跳转某页面   location.href = 'http://www.itcast.cn';

 <button>点击</button>
    <div></div>
    <script>
        var a=document.querySelector('button')
        var b=document.querySelector('div')
        var t=5
        a.addEventListener('click',function(){
            setInterval(function(){
                if(t==0){
             location.href = 'http://www.itcast.cn';  
                }
                else{
            b.innerHTML='还有'+t+'秒跳转页面'
            t--
                }
            },1000)
       
        })
    </script>

8.一个页面的信息在另一个页面显示

name 属性规定 <input> 元素的名称。

name 属性用于在 JavaScript 中引用元素,或者在表单提交后引用表单数据。

注意:只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。

form绑定表单,action表示要将表单传递的地址

//注册页面
<body>
    <form action="index.html">
        用户名: <input type="text" name="uname">
        <input type="submit" value="登录">
    </form>
</body>
//登录页面
<body>
    <div></div>
    <script>
        console.log(location.search); // ?uname=andy
        // 1.先去掉?  substr('起始的位置',截取几个字符);
        var params = location.search.substr(1); // uname=andy
        console.log(params);
        // 2. 利用=把字符串分割为数组 split('=');
        var arr = params.split('=');
        console.log(arr); // ["uname", "ANDY"]
        var div = document.querySelector('div');
        // 3.把数据写入div中
        div.innerHTML = arr[1] + '欢迎您';
    </script>
</body>

9.location.href需要写等于号,这种不需要

            // 记录浏览历史,所以可以实现后退功能
            location.assign('http://www.itcast.cn');
            // 不记录浏览历史,所以不可以实现后退功能
            location.replace('http://www.itcast.cn');
            //刷新(ctrl+F5)强制刷新
            location.reload(true);

10.    navigator.userAgent返回用户设备类型

        history对象方法
        back()可以后退功能
        forward()前进功能
        go(参数)前进后退功能参数如果是1前进1个页面如果是-1后退1个页面

history.forward();
 history.go(1);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值