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 相关文章推荐
关于JS中的闭包浅谈
Aug 23 Javascript
jquery 添加节点的几种方法介绍
Sep 04 Javascript
jQuery中:submit选择器用法实例
Jan 03 Javascript
jquery validate和jquery form 插件组合实现验证表单后AJAX提交
Aug 26 Javascript
最简单纯JavaScript实现Tab标签页切换的方式(推荐)
Jul 25 Javascript
真正好用的js验证上传文件大小的简单方法
Oct 27 Javascript
js实现右键菜单功能
Nov 28 Javascript
React中ES5与ES6写法的区别总结
Apr 21 Javascript
小程序点赞收藏功能的实现代码示例
Sep 07 Javascript
vue实现短信验证码输入框
Apr 17 Javascript
vue项目打包后请求地址错误/打包后跨域操作
Nov 04 Javascript
vue项目中openlayers绘制行政区划
Dec 24 Vue.js
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
一个oracle+PHP的查询的例子
2006/10/09 PHP
php利用cookie实现访问次数统计代码
2011/05/19 PHP
PHP进阶学习之垃圾回收机制详解
2019/06/18 PHP
JS判断不同分辨率调用不同的CSS样式文件实现思路及测试代码
2013/01/23 Javascript
基于javascript实现句子翻牌网页版小游戏
2016/03/23 Javascript
Ionic如何创建APP项目
2016/06/03 Javascript
js微信分享API
2020/10/11 Javascript
Bootstrap按钮功能之查询按钮和重置按钮
2016/10/26 Javascript
TypeScript学习之强制类型的转换
2016/12/27 Javascript
jQuery实现淡入淡出的模态框
2017/02/09 Javascript
详解Webpack + ES6 最新环境搭建与配置
2018/06/04 Javascript
LayerClose弹窗关闭刷新方法
2018/08/17 Javascript
Koa 中的错误处理解析
2019/04/09 Javascript
vue 项目 iOS WKWebView 加载
2019/04/17 Javascript
前端Electron新手入门教程详解
2019/06/21 Javascript
VUE实现移动端列表筛选功能
2019/08/23 Javascript
TensorFlow.js 微信小程序插件开始支持模型缓存的方法
2020/02/21 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
2020/08/28 Javascript
[01:08]DOTA2次级职业联赛 - Wings 战队宣传片
2014/12/01 DOTA
[50:54]完美世界DOTA2联赛 GXR vs IO 第三场 11.07
2020/11/10 DOTA
Python3读取UTF-8文件及统计文件行数的方法
2015/05/22 Python
python利用dir函数查看类中所有成员函数示例代码
2017/09/08 Python
几行Python代码爬取3000+上市公司的信息
2019/01/24 Python
10分钟教你用python动画演示深度优先算法搜寻逃出迷宫的路径
2019/08/12 Python
python连接、操作mongodb数据库的方法实例详解
2019/09/11 Python
Python 实现加密过的PDF文件转WORD格式
2020/02/04 Python
pandas实现excel中的数据透视表和Vlookup函数功能代码
2020/02/14 Python
大学毕业感言
2014/01/10 职场文书
小学生新学期寄语
2014/01/19 职场文书
转预备党员政审材料
2014/02/06 职场文书
2014学雷锋活动心得体会
2014/03/10 职场文书
学校党的群众路线教育实践活动对照检查材料
2014/09/24 职场文书
后进生评语大全
2015/01/04 职场文书
2015年母亲节寄语
2015/03/23 职场文书
2015年四年级班主任工作总结
2015/10/22 职场文书
python 判断字符串当中是否包含字符(str.contain)
2022/06/01 Python