JavaScript浏览器对象模型BOM(BrowserObjectModel)实例详解


Posted in Javascript onNovember 29, 2016

本文实例讲述了JavaScript浏览器对象模型BOM。分享给大家供大家参考,具体如下:

window对象位于BOM层次结构的最顶层。它包含了一些非常重要的子对象,包括location,navigator,document,screen,history。location对象包含当前页面的URL信息。有些信息是只读的,有些信息是可以读写的比如href属性。我们不仅可以通过href属性来获取当前页面的URL信息,还可以通过修改href属性,来跳转到新的页面。

<html>
  <body>
    <script type='text/javaScript'>
      window.location.replace("http://www.baidu.com");
      window.location.href="http://www.sina.com";
    </script>
  </body>
</html>

history对象保存了用户自打开浏览器以来所访问页面的历史记录。但是某些页面不会被记录下来,比如使用location对象的replace()方法加载的页面将不会记录在history对象中。
navigator对象表示浏览器自身,它包含了浏览器一些非常有用的信息,比如版本号,浏览器类型以及用户所使用的操作系统。
screen对象包含了客服端显示能力的相关信息。

<html>
  <body>
    <script type='text/javascript'>
      switch(window.screen.colorDepth){
        case 1:
        case 4:
          document.bgColor = "white";
          break;
        case 8:
        case 15:
        case 16:
          document.bgColor = "blue";
          break;
        case 24:
        case 32:
          document.bgColor = "skyblue";
          break;
        default:
          document.bgColor = "white";
      }
      document.write("Your screen supports "+window.screen.colorDepth + " bit color");
    </script>
  </body>
</html>

document是最重要的对象之一。document对象包含了三个数组属性links[],images[],forms[]。这三个数组分别代表了页面中所有由<A>、<img>、<form>所创建对象的集合。

<html>
  <body>
    <img name=img1 src="images/1.jpg" border=0 width=200 height=150>
    <script type='text/javaScript'>
      var myImages = new Array("images/1.jpg","images/2.jpg","images/3.jpg","images/4.jpg");
      var imgIndex = prompt("Enter a number from 0 to 3","");
      document.images['img1'].src = myImages[imgIndex];
    </script>
  </body>
</html>
<html>
  <head>
    <script type='text/javascript'>
      var imagesArray=new Array("images/1.jpg","images/2.jpg","images/3.jpg","images/4.jpg");
      function changeImg(imageNumber){
        var newImage = imagesArray[Math.round(Math.random()*3)];
        alert(document.images[imageNumber].src);
        while(document.images[imageNumber].src.indexOf(newImage)!=-1){
          newImage = imagesArray[Math.round(Math.random()*3)];
        }
        document.images[imageNumber].src = newImage;
        return false;
      }
    </script>
  </head>
  <body>
    <img name='img1' src="images/1.jpg" width=150 height=200 onclick="return changeImg(0)">
    <img name='img2' src="images/2.jpg" width=150 height=200 onclick="return changeImg(1)">
  </body>
</html>
<html>
  <head>
    <script type='text/javascript'>
      function linkPage(){
        alert('You Clicked?');
        return false;
      }
    </script>
  </head>
  <body>
    <A href='http://www.baidu.com' name='link' onclick="return linkPage()">
      Click Me
    </A>
  </body>
  <script type='text/javaScript'>
    window.document.links['link'].href="http://www.google.com";
  </script>
<html>

通过这三个数组就能访问到为标记所创建的相应对象,可以通过修改img对象的属性来修改页面的图片,通过修改超链接对象的属性来改变超链接的URL。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
自适应高度框架 ----属个人收藏内容
Jan 22 Javascript
$()JS小技巧
Jul 21 Javascript
JAVASCRIPT下判断IE与FF的比较简单的方式
Oct 17 Javascript
xml分页+ajax请求数据源+dom取结果实例代码
Oct 31 Javascript
JQuery实现表格动态增加行并对新行添加事件
Jul 30 Javascript
Node.js实现Excel转JSON
Apr 24 Javascript
js获取url传值的方法
Dec 18 Javascript
javascript输出AscII码扩展集中的字符方法
Dec 26 Javascript
JS中from 表单序列化提交的代码
Jan 20 Javascript
Easy UI动态树点击文字实现展开关闭功能
Sep 30 Javascript
动态加载权限管理模块中的Vue组件
Jan 16 Javascript
swiper实现异形轮播效果
Nov 28 Javascript
JS判断是否为JSON对象及是否存在某字段的方法(推荐)
Nov 29 #Javascript
JS 拦截全局ajax请求实例解析
Nov 29 #Javascript
JS正则替换掉小括号及内容的方法
Nov 29 #Javascript
详解堆的javascript实现方法
Nov 29 #Javascript
Bootstrap Table使用心得总结
Nov 29 #Javascript
jQuery将表单序列化成一个Object对象的实例
Nov 29 #Javascript
利用CSS、JavaScript及Ajax实现图片预加载的方法
Nov 29 #Javascript
You might like
php方法调用模式与函数调用模式简例
2011/09/20 PHP
ThinkPHP框架里隐藏index.php
2016/04/12 PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
2020/07/10 PHP
jquery ajax 同步异步的执行 return值不能取得的解决方案
2012/01/08 Javascript
html组件不可输入(只读)同时任何组件都有效
2013/04/01 Javascript
jQuery动画效果-slideUp slideDown上下滑动示例代码
2013/08/28 Javascript
轻松创建nodejs服务器(10):处理上传图片
2014/12/18 NodeJs
javascript折半查找详解
2015/01/26 Javascript
原生js实现addclass,removeclass,toggleclasss实例
2016/11/24 Javascript
jquery easyui DataGrid简单示例
2017/01/23 Javascript
微信小程序图片轮播组件gallery slider使用方法详解
2018/01/31 Javascript
jQuery实现的简单图片轮播效果完整示例
2018/02/08 jQuery
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
微信小程序内拖动图片实现移动、放大、旋转的方法
2018/09/04 Javascript
微信小程序实现侧边分类栏
2019/10/21 Javascript
浅谈关于vue中scss公用的解决方案
2019/12/02 Javascript
javascript实现简易的计算器
2020/01/17 Javascript
vant组件中 dialog的确认按钮的回调事件操作
2020/11/04 Javascript
[01:45]DOTA2众星出演!DSPL刀塔次级职业联赛宣传片
2014/11/21 DOTA
[01:15:15]VG VS EG Supermajor小组赛B组胜者组第一轮 BO3第二场 6.2
2018/06/03 DOTA
Python使用QRCode模块生成二维码实例详解
2017/06/14 Python
Python基于列表模拟堆栈和队列功能示例
2018/01/05 Python
Python实现k-means算法
2018/02/23 Python
Python中的单行、多行、中文注释方法
2018/07/19 Python
python 字典有序并写入json文件过程解析
2019/09/30 Python
python实现模拟器爬取抖音评论数据的示例代码
2021/01/06 Python
关于CSS Tooltips(鼠标经过时显示)的效果
2013/04/10 HTML / CSS
Html5适配iphoneX刘海屏的简单实现
2019/04/09 HTML / CSS
Html5踩坑记之mandMobile使用小记
2020/04/02 HTML / CSS
美国领先的在线旅游网站:Orbitz
2018/11/05 全球购物
英语专业毕业个人求职自荐信
2013/09/21 职场文书
乡镇党员干部群众路线对照检查材料思想汇报
2014/09/28 职场文书
共青团员自我评价
2015/03/10 职场文书
Python+Appium新手教程
2021/04/17 Python
Python实现智慧校园自动评教全新版
2021/06/18 Python
MySQL事务的ACID特性以及并发问题方案
2022/07/15 MySQL