背景: 

最近在着手项目的时候,意识到自己JS的欠缺。虽然看了不少JavaScript的视频,但真正项目中并不是经常遇到大且难的例子。所以JavaScript的基础还需要再打扎实,也就有了这一系列博客。这一系列更重视实用,理论部分可参看之前博客。

BOM(Browser Object Mode)浏览器对象模型,是Javascript的重要组成部分。它提供了一系列对象用于与浏览器窗口进行交互,这些对象通常统称为BOM。

由图中可看出,window对象是BOM中所有对象的父对象。

1、window对象——BOM核心

window,顾名思义,窗口对象。

它表示整个浏览器窗口,主要用来操作浏览器窗口。

对窗口的操作主要是对坐标的调整,屏幕的坐标如下图所示:

常用的方法有:

1)相对操作

moveBy——移动

resizeBy——调整大小

2)绝对操作

moveTo

resizeTo

  2、document 对象

它是window对象的一个属性,可以用来处理页面文档,但很多功能已不推荐使用。

常用方法示例:

<script type="text/javascript">
function test() {
//导航到新页面
document.URL = "http://www.baidu.com"
//输出内容
document.write(document.URL); //window.document.write(document.URL)作用相同
}
</script>

3、location 对象

它是window对象和document对象的属性,用来分析和设置页面的URL地址。

常用方法示例:

           //类似document的URL属性
location.href="http://baidu.com"; //重新加载页面
location.reload(true);

4、navigator 对象

被认为是最重要的对象,它包含了一系列浏览器信息的属性。

userAgent是最常用的属性,用来完成浏览器判断。

            var auserAgent = navigator.userAgent;
document.write(auserAgent);

显示结果:

       5、screen 对象

也是window对象的属性之一,主要用来获取用户的屏幕信息。

常用方法示例:

 document.write("屏幕的高度是:"+ screen.availHeight+" "+"屏幕的宽度是:"+screen.availWidth);

显示结果:

总结:

JavaScript是基础。JavaScript学不好,而直接去用JQuery中提供的函数的话,就有一种知识架空的感觉。知其然,不知其所以然。Js也可帮助你理解看懂Ajax,因此,JS学了要会用,要能用上,而不是写个简单的注册事件都要百度,这样效率太低,也太不专业了。

最新文章

  1. Android(3)—Mono For Android App版本自动更新(2)
  2. 解决java.io.IOException: HTTPS hostname wrong: should be
  3. oracle 监听启动、停止、查看命令
  4. 无法将分支 master 发布到远程 origin,因为远程存储库中已存在具有同一名称的分支
  5. JavaScript基础 DOM的操作
  6. iTunesConnect进行App转移2-官方说明
  7. 4.python中的用户交互
  8. phpmyadmin导入大sql文件失败解决办法
  9. 基于jsp+servlet图书管理系统之后台用户信息修改操作
  10. iOS自动自动隐藏软键盘
  11. m2eclipse简单使用,创建Maven项目 ,运行mvn命令(转)
  12. Visual Studio 2013 发布正式版
  13. 在SuperMap iDesktop中如何快速追加记录行?
  14. 2019年我的OKR(objectives and key results)目标与关键成果法
  15. Vue.extend和Vue.component的联系与差异
  16. iOS如何在应用中添加图标更换功能
  17. A1053. Path of Equal Weight
  18. shell脚本中:1&gt;&amp;2 2&gt;&amp;1 &amp;&gt;filename重定向的含义和区别
  19. KADEMLIA算法学习
  20. gulpjs

热门文章

  1. 在jdbc基础上进阶一小步的C3p0 连接池(DBCP 不能读xml配置文件,已淘汰) 和DBUtils 中两个主要类QueryRunner和ResultSetHandler的使用
  2. XML 对xml文件的crud的增加 create操作 增加元素 增加属性
  3. iOS 检测版本更新(02)
  4. v-if
  5. GNU 汇编 协处理器指令
  6. ethereum(以太坊)(七)--枚举/映射/构造函数/修改器
  7. caioj:1093: 并查集2(scy的删边问题) C++
  8. 牛客暑假多校第一场J-Different Integers
  9. 文档-linux io模式及select,poll,epoll
  10. PHP代码审计3-SQL注入,CSRF,动态函数执行与匿名函数执行,unserialize 反序列化漏洞,变量覆盖,文件管理,文件上传