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 相关文章推荐
浅谈javascript的原型继承
Jul 25 Javascript
如何使用jQuery Draggable和Droppable实现拖拽功能
Jul 05 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
Dec 31 Javascript
JS实现浏览器状态栏文字从右向左弹出效果代码
Oct 27 Javascript
每天一篇javascript学习小结(Date对象)
Nov 13 Javascript
使用JavaScriptCore实现OC和JS交互详解
Mar 28 Javascript
浅谈React Native 中组件的生命周期
Sep 08 Javascript
bootstrap日期插件daterangepicker使用详解
Oct 19 Javascript
微信小程序实现动态获取元素宽高的方法分析
Dec 10 Javascript
一篇文章,教你学会Vue CLI 插件开发
Apr 17 Javascript
微信小程序 点击切换样式scroll-view实现代码实例
Oct 11 Javascript
vue移动端使用appClound拉起支付宝支付的实现方法
Nov 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环境套包 dedeampz 伪静态设置示例
2014/03/26 PHP
php使用COPY函数更新配置文件的方法
2015/06/18 PHP
javascript new后的constructor属性
2010/08/05 Javascript
javascript奇异的arguments分析
2010/10/20 Javascript
jQuery插件 selectToSelect使用方法
2013/10/02 Javascript
JS格式化数字金额用逗号隔开保留两位小数
2013/10/18 Javascript
利用JQuery和Servlet实现跨域提交请求示例分享
2014/02/12 Javascript
js获取ajax返回值代码
2014/04/30 Javascript
escape函数解决js中ajax传递中文出现乱码问题
2014/10/30 Javascript
javascript正则表达式使用replace()替换手机号的方法
2015/01/19 Javascript
使用vue.js写一个tab选项卡效果
2017/03/25 Javascript
JavaScript实现简单生成随机颜色的方法
2017/09/21 Javascript
详解Webstorm 新建.vue文件支持高亮vue语法和es6语法
2017/10/26 Javascript
浅析java线程中断的办法
2018/07/29 Javascript
vue 实现滚动到底部翻页效果(pc端)
2019/07/31 Javascript
[01:06:43]完美世界DOTA2联赛PWL S3 PXG vs GXR 第二场 12.19
2020/12/24 DOTA
从零学Python之引用和类属性的初步理解
2014/05/15 Python
Python模拟登录12306的方法
2014/12/30 Python
python向已存在的excel中新增表,不覆盖原数据的实例
2018/05/02 Python
用Python写一个模拟qq聊天小程序的代码实例
2019/03/06 Python
Python常见读写文件操作实例总结【文本、json、csv、pdf等】
2019/04/15 Python
kali中python版本的切换方法
2019/07/11 Python
Python collections模块使用方法详解
2019/08/28 Python
python NumPy ndarray二维数组 按照行列求平均实例
2019/11/26 Python
美国高品质个性化珠宝销售网站:Jewlr
2018/05/03 全球购物
英国Flybe航空官网:欧洲最大的独立支线廉价航空公司
2019/07/15 全球购物
最新计算机专业自荐信
2013/10/16 职场文书
外贸业务员求职信范文
2013/12/12 职场文书
评析教师个人的自我评价
2014/02/19 职场文书
学校运动会霸气口号
2014/06/07 职场文书
党支部班子“四风”问题自我剖析材料
2014/09/28 职场文书
政府四风问题整改措施
2014/10/04 职场文书
教师节老师寄语
2015/05/28 职场文书
婚礼双方父亲致辞
2015/07/27 职场文书
优秀家长事迹材料(2016推荐版)
2016/02/29 职场文书
2016五四青年节活动总结范文
2016/04/06 职场文书