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操作cookie的一点小收获分享
Sep 03 Javascript
JS实现图片横向滚动效果示例代码
Sep 04 Javascript
jquery fancybox ie6不显示关闭按钮的解决办法
Dec 25 Javascript
实例讲解JQuery中this和$(this)区别
Dec 08 Javascript
JavaScript数组随机排列实现随机洗牌功能
Mar 19 Javascript
教你使用javascript简单写一个页面模板引擎
May 05 Javascript
JavaScript闭包和范围实例详解
Dec 19 Javascript
简单实现js悬浮导航效果
Feb 05 Javascript
原生js实现可拖拽效果
Feb 28 Javascript
jQuery实现百度登录框的动态切换效果
Apr 21 jQuery
jQury Ajax使用Token验证身份实例代码
Sep 22 Javascript
js+springMVC 提交数组数据到后台的实例
Sep 21 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边学边教》(02.Apache+PHP环境配置――下篇)
2006/12/13 PHP
php权重计算方法代码分享
2014/01/09 PHP
Thinkphp中import的几个用法详细介绍
2014/07/02 PHP
WordPress中制作导航菜单的PHP核心方法讲解
2015/12/11 PHP
PHP 匿名函数与注意事项详细介绍
2016/11/26 PHP
再谈IE中Flash控件的自动激活 ObjectWrap
2007/03/09 Javascript
js实现权限树的更新权限时的全选全消功能
2009/02/17 Javascript
jquery中的 $(&quot;#jb51&quot;)与document.getElementById(&quot;jb51&quot;) 的区别
2011/07/26 Javascript
js异常捕获方法介绍
2013/04/10 Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
2013/11/14 Javascript
javascript中interval与setTimeOut的区别示例介绍
2014/03/14 Javascript
ECMAScript6块级作用域及新变量声明(let)
2015/06/12 Javascript
readonly和disabled属性的区别
2015/07/26 Javascript
jQuery+CSS实现的网页二级下滑菜单效果
2015/08/25 Javascript
Nodejs实现短信验证码功能
2017/02/09 NodeJs
Vue Router的懒加载路径的解决方法
2018/06/21 Javascript
微信小程序methods中定义的方法互相调用的实例代码
2018/08/07 Javascript
JS实现根据详细地址获取经纬度功能示例
2019/04/16 Javascript
Python字符串和文件操作常用函数分析
2015/04/08 Python
使用Python下的XSLT API进行web开发的简单教程
2015/04/15 Python
Python全局变量用法实例分析
2016/07/19 Python
python搭建虚拟环境的步骤详解
2016/09/27 Python
Python使用struct处理二进制的实例详解
2017/09/11 Python
python实现代码统计器
2019/09/19 Python
Python英文文章词频统计(14份剑桥真题词频统计)
2019/10/13 Python
django model 条件过滤 queryset.filter(**condtions)用法详解
2020/05/20 Python
python 通过文件夹导入包的操作
2020/06/01 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
2020/12/09 Python
中学生爱国演讲稿
2013/12/31 职场文书
偷看我的初中毕业鉴定
2014/01/29 职场文书
护理人员的自我评价分享
2014/03/15 职场文书
爱我中华演讲稿
2014/05/20 职场文书
水利水电建筑施工应届生求职信
2014/07/04 职场文书
博士生导师推荐信
2014/07/08 职场文书
市场调研项目授权委托书范本
2014/10/04 职场文书
群众路线剖析材料(四风问题)
2014/10/08 职场文书