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 相关文章推荐
jQuery客户端分页实例代码
Nov 18 Javascript
JS实现选项卡实例详解
Nov 17 Javascript
JS验证邮件地址格式方法小结
Dec 01 Javascript
JavaScript操作 url 中 search 部分方法函数
Jun 15 Javascript
浅谈JS使用[ ]来访问对象属性
Sep 21 Javascript
Bootstrap响应式导航由768px变成992px的实现代码
Jun 15 Javascript
ZeroClipboard.js使用一个flash复制多个文本框
Jun 19 Javascript
Three.js实现浏览器变动时进行自适应的方法
Sep 26 Javascript
JavaScript基础心法 数据类型
Mar 05 Javascript
解决vue-cli单页面手机应用input点击手机端虚拟键盘弹出盖住input问题
Aug 25 Javascript
前端面试知识点目录一览
Apr 15 Javascript
原生js实现瀑布流效果
Mar 09 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版)
2006/10/09 PHP
一个SQL管理员的web接口
2006/10/09 PHP
php urlencode()与urldecode()函数字符编码原理详解
2011/12/06 PHP
PHP+shell实现多线程的方法
2015/07/01 PHP
thinkphp制作404跳转页的简单实现方法
2016/09/22 PHP
PHP通过文件路径获取文件名的实例代码
2018/10/14 PHP
子窗口、父窗口和Silverlight之间的相互调用
2010/08/16 Javascript
通过JavaScript控制字体大小的代码
2011/10/04 Javascript
TextArea设置MaxLength属性最大输入值的js代码
2012/12/21 Javascript
js中Image对象以及对其预加载处理示例
2013/11/20 Javascript
浏览器图片选择预览、旋转、批量上传的JS代码实现
2013/12/04 Javascript
Javascript基础教程之switch语句
2015/01/18 Javascript
Yii2使用Bootbox插件实现自定义弹窗
2015/04/02 Javascript
javascript 实现map集合
2015/04/03 Javascript
javascript实现控制div颜色
2015/07/07 Javascript
最常见的左侧分类菜单栏jQuery实现代码
2016/11/28 Javascript
vue.js中过滤器的使用教程
2017/06/08 Javascript
ionic+html5+API实现双击返回键退出应用
2019/09/17 Javascript
实现vuex与组件data之间的数据同步更新方式
2019/11/12 Javascript
关于vue利用postcss-pxtorem进行移动端适配的问题
2019/11/20 Javascript
vuex分模块后,实现获取state的值
2020/07/26 Javascript
Python for Informatics 第11章 正则表达式(一)
2016/04/21 Python
Python编程实现二叉树及七种遍历方法详解
2017/06/02 Python
简单了解Python3里的一些新特性
2019/07/13 Python
使用pycharm在本地开发并实时同步到服务器
2019/08/02 Python
pycharm不能运行.py文件的解决方法
2020/02/12 Python
python判断是空的实例分享
2020/07/06 Python
Python hashlib模块的使用示例
2020/10/09 Python
浅谈Selenium 控制浏览器的常用方法
2020/12/04 Python
python 实现客户端与服务端的通信
2020/12/23 Python
实例教程 纯CSS3打造非常炫的加载动画效果
2014/11/05 HTML / CSS
揠苗助长教学反思
2014/02/04 职场文书
社区工作者感言
2014/03/02 职场文书
餐饮总经理岗位职责
2014/03/07 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
Python数据分析入门之数据读取与存储
2021/05/13 Python