Bom浏览器对象模型与Dom文档对象模型以及document.ready与onload的区别

Bom有三个对象需要强行记住,分别是window、history、Location

1.window(代表浏览器打开的窗口)

有7个常用的window方法:

            alert():弹出警告框

            confirm():弹出确认框

            prompt():弹出输入框

            setInterval():设置周期时间执行(有返回方法,用于清除周期执行),可以一直执行

            clearInterval():清除周期时间执行

            setTimeOut():设置周期时间执行(有返回方法,用于清除周期执行),只执行一次

            clearTimeOut():清除周期时间执行

2.history(代表前后历史页面)

有3个常用的history方法:

        back():返回前一页

        forward():下一页

        go():可以用于前几页,或后几页(可以设置参数,1代表下一页)

3.location(代表页面的加载路径)

最重要的一个方法:location.href="url"   设置访问的跳转路径

//===========================分割线==================================

Dom—文档对象模型(包含整个html页面的内容)

Bom—浏览器对象模型(包含浏览器相关内容)

document.ready和onload的区别——JavaScript文档加载完成事件
页面加载完成有两种事件:

一是ready—表示文档结构已经加载完成(不包含图片等非文字媒体文件);

二是onload—指示页面包含图片等文件在内的所有元素都加载完成。

1、Dom Ready

用jQuery的人很多人都是这么开始写脚本的: 
$(function(){ 
      // do something 

});

其实这个就是jq ready()的简写,他等价于: 
$(document).ready(function(){
     //do something

})

或者下面这个方法,jQuer的默认参数是:“document”;
$().ready(function(){
    //do something
})

可以理解为页面加载时方法绑定,真正该触发时触发。

其的作用或者意义就是:在DOM加载完成后就可以可以对DOM进行操作。
一般情况一个页面响应加载的顺序是,域名解析-加载html-加载js和css-加载图片等其他信息。

那么Dom Ready应该在“加载js和css”和“加载图片等其他信息”之间,就可以操作Dom了。

2、Dom Load

用原生的js的时候我们通常用onload时间来做一些事情,比如: 

window.οnlοad=function(){

      //do something

}

或者经常用到的图片,假设这个

document.getElementById("imgID").οnlοad=function(){

     //do something

}

这种就是Dom Load,他的作用或者意义就是:在document文档加载完成后就可以可以对DOM进行操作,document文档包括了加载图片等其他信息。

那么Dom Load就是在页面响应加载的顺序中的“加载图片等其他信息”之后,就可以操作Dom了。

3.Dom Ready和Dom Loadd的区别

Dom Ready是在dom加载完成后就可以直接对dom进行操作,比如一张图片只要标签完成,不用等这个图片加载完成,就可以设置图片的宽高的属性或样式等;
Dom Load是在整个document文档(包括了加载图片等其他信息)加载完成后就可以直接对dom进行操作,比如一张图片要等这个图标加载完成之后才能设置图片的宽高的属性或样式等;
比如一个图片浏览的效果,通常如果图片尺寸很大的情况下,为了防止图片把页面撑开通常会限定图片的宽度或高度,如果是单张图片或者是多张规格比例统一的图片下我们可以直接在上加个宽度或者高度的属性”码头的大照片”,或者可以在css样式中加宽度或者高度的属性(推荐)。但是如果这些张规格比例不统一的图片要浏览呢?那就有问题,你设置宽高很可能造成图片严重失真。





你可能感兴趣的:(javascript)