web前端学习(四十四)——JavaScript BOM-Screen、BOM-Navigator、BOM-History对象实例

简介: web前端学习(四十四)——JavaScript BOM-Screen、BOM-Navigator、BOM-History对象实例

1.BOM-Screen对象


window.screen对象包含有关用户屏幕的信息。window.screen对象在编写时可以不使用 window 这个前缀。 

属性

说明

availHeight

返回屏幕的高度(不包括Windows任务栏)

availWidth

返回屏幕的宽度(不包括Windows任务栏)

colorDepth

返回目标设备或缓冲器上的调色板的比特深度

height

返回屏幕的总高度

pixelDepth

返回屏幕的颜色分辨率(每象素的位数)

width

返回屏幕的总宽度

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <title>JS简单学习</title>
  </head>
  <body>
    <h3>你的屏幕:</h3>
    <script type="text/javascript">
      document.write("总宽度/高度: ");
      document.write(screen.width + "*" + screen.height);
      document.write("<br />");
      document.write("可以宽度/高度: ");
      document.write(screen.availWidth + "*" + screen.availHeight);
      document.write("<br />");
      document.write("颜色深度: ");
      document.write(screen.colorDepth);
      document.write("<br />");
      document.write("颜色分辨率: ");
      document.write(screen.pixelDepth);
    </script>
  </body>
</html>

2.BOM-Navigator对象


window.navigator对象包含有关访问者浏览器的信息。window.navigator 对象在编写时可不使用 window 这个前缀。 

属性

说明

appCodeName

返回浏览器的代码名

appName

返回浏览器的名称

appVersion

返回浏览器的平台和版本信息

cookieEnabled

返回指明浏览器中是否启用 cookie 的布尔值

platform

返回运行浏览器的操作系统平台

userAgent

返回由客户机发送服务器的user-agent 头部的值

方法

描述

javaEnabled()

指定是否在浏览器中启用Java

taintEnabled()

规定浏览器是否启用数据污点(data tainting)

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>JS简单学习</title>
  </head>
  <body>
    <div id="example"></div>
    <script type="text/javascript">
      txt = "<p>浏览器代号: " + navigator.appCodeName + "</p>";
      txt+= "<p>浏览器名称: " + navigator.appName + "</p>";
      txt+= "<p>浏览器版本: " + navigator.appVersion + "</p>";
      txt+= "<p>启用Cookies: " + navigator.cookieEnabled + "</p>";
      txt+= "<p>硬件平台: " + navigator.platform + "</p>";
      txt+= "<p>用户代理: " + navigator.userAgent + "</p>";
      txt+= "<p>用户代理语言: " + navigator.language + "</p>";
      document.getElementById("example").innerHTML=txt;
    </script>
  </body>
</html>

3.BOM-History对象


window.history对象包含浏览器的历史。window.history对象在编写时可不使用 window 这个前缀。

为了保护用户隐私,对 JavaScript 访问该对象的方法做出了限制。一些方法:

·       history.back() - 与在浏览器点击后退按钮相同

·       history.forward() - 与在浏览器中点击向前按钮相同

属性

说明

length

返回历史列表中的网址数

方法

说明

back()

加载 history 列表中的前一个 URL

forward()

加载 history 列表中的下一个 URL

go()

加载 history 列表中的某个具体页面

3.1 back()

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>JS简单学习</title>
  </head>
  <body>
    <input type="button" value="返回" onclick="goBack()" />
    <br /><br />
    <script type="text/javascript">
      function goBack() {
        window.history.back();
      }
      document.write("历史列表中URL的数量: " + history.length);
    </script>
    <p>注意,点击后退按钮在这里不会导致任何行动,因为以前的历史列表中没有该URL</p>
  </body>
</html>

3.2 forward()

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>JS简单学习</title>
    <script type="text/javascript">
      function goForward() {
        window.history.forward();
      }
    </script>
  </head>
  <body>
    <input type="button" value="前进" onclick="goForward()" />
    <br />
    <p>注意,点击这里的前进按钮不会导致任何行动,因为历史列表中没有下一个URL。</p>
  </body>
</html>

3.3 go()

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>JS简单学习</title>
    <script type="text/javascript">
      function goBack() {
        window.history.go(-2);
      }
    </script>
  </head>
  <body>
    <input type="button" value="后退2页" onclick="goBack()" />
    <p>注意,点击“后退2页”按钮将不会导致任何行动,因为以前的历史列表中没有URL。</p>
  </body>
</html>

 

相关文章
|
4天前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
8天前
|
前端开发 JavaScript 安全
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第27天】本文介绍了HTTP/2和HTTPS在前端性能调优中的应用。通过多路复用、服务器推送和头部压缩等特性,HTTP/2显著提升了Web性能。同时,HTTPS确保了数据传输的安全性。文章提供了示例代码,展示了如何使用Node.js创建一个HTTP/2服务器。
19 2
|
4天前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
4天前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
8天前
|
前端开发 JavaScript
Bootstrap Web 前端 UI 框架
Bootstrap 是快速开发 Web 应用程序的前端工具包。
22 3
|
8天前
|
前端开发 安全 应用服务中间件
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第26天】随着互联网的快速发展,前端性能调优成为开发者的重要任务。本文探讨了HTTP/2与HTTPS在前端性能优化中的应用,介绍了二进制分帧、多路复用和服务器推送等特性,并通过Nginx配置示例展示了如何启用HTTP/2和HTTPS,以提升Web应用的性能和安全性。
15 3
|
8天前
|
前端开发 JavaScript API
前端框架新探索:Svelte在构建高性能Web应用中的优势
【10月更文挑战第26天】近年来,前端技术飞速发展,Svelte凭借独特的编译时优化和简洁的API设计,成为构建高性能Web应用的优选。本文介绍Svelte的特点和优势,包括编译而非虚拟DOM、组件化开发、状态管理及响应式更新机制,并通过示例代码展示其使用方法。
24 2
|
9天前
|
开发框架 前端开发 JavaScript
Web前端框架
Web前端框架等名词
14 2
|
Web App开发 JavaScript 前端开发
|
移动开发 JavaScript 前端开发