BOM 请给javascript一个说法-------Day33
楼市低迷,业主是不是该要个说法。黄金暴跌,谁来给大妈们一个说法。中国足球,敢不敢给大家一个说法。
给个说法,谁给,给谁,这该是哲学的范畴了吧。
可是,在这里。BOM是真真切切的给javascript一个说法,这到底是怎么个意思呢,我们慢慢来看。
我们先来回想下完整javascript的结构组成:ECMAjavascript + DOM + BOM。
ECMAjavascript我们记得非常清楚。这是核心。变量里存不同类型的值,运算符对照值。运算符改变值。语句描写叙述运算,语句合成函数方法,就好像一个实体设备的说明书,明明确白告诉了你,它须要如何的操作;DOM就像是耐不住寂寞的孩子。拿到说明书就開始操作。这里打一巴掌,那里踢一脚,偶尔还拆几个模块。结果设备这里掉个螺丝。那里少块漆。变的破旧不堪。而BOM呢。它是什么。它就是你最初做这个设备的初衷,你能看到的是它的功能,可能它不再美观,可能有些古老。可是。DOM不管你给我把梦想拆的多碎。我总能用BOM总能看到它的熠熠生辉。
BOM,browser object model的缩写,简称浏览器对象模型,又是个可爱到让人凌乱的答案,可恨的是它仍然是对的。
BOM不像DOM那么细腻,它没法整合整个文档的内容,可是它狂放,它要将它整个的实现,它进行的是浏览器和内容之间的交互,让你最直观的看到javascript的魅力,甚至javascript直接以BOM模型为入口来改变浏览器。可惜这个世界终究是多彩的,个体的差异永远无法忽略,狼有狼窝,鼠有鼠洞。它没有标准,仅仅看你就竟让谁来做,当然这里也就出现了兼容问题,这是后话,暂且不谈。
事实上最难的便是理解BOM的概念,上面这一大片非专业的文字是我的理解。尽管举例略有偏颇,但感觉意思应该是对的。
接下来,我们仅仅简介BOM的一些知识。先让我们看幅结构图
假设说DOM的操作是跟鼠标、键盘和页面本身内容相关联的话,BOM则强势的要多了些。history和location是窗体,screen和navigator是屏幕信息,缓冲文件cookie也在这里,scroll滚动栏它事实上也能够操作的,还有框架frames,甚至还有那些弹出框,这些每个都能够够写多篇介绍的。就不在这里多说了,假设还不够明了的话,来看看以下这幅:
事实上。BOM的存在。本身是不是就是给javascript最好的说法呢,果然存在即是合理的啊,这是我当前的理解,经年过后,不知道我会怎么看这时的我,至少我如今非常开心,我这样把它理解了,睡了。有些倦。
BOM 请给javascript一个说法-------Day33的更多相关文章
- 已知一个函数rand7()能够生成1-7的随机数,请给出一个函数rand10(),该函数能够生成1-10的随机数。
题目: 已知一个函数rand7()能够生成1-7的随机数,请给出一个函数,该函数能够生成1-10的随机数. 思路: 假如已知一个函数能够生成1-49的随机数,那么如何以此生成1-10的随机数呢? 解法 ...
- 请写出一个超链接,点击链接后可以向zhangsan@d-heaven.com发送电子邮件。
请写出一个超链接,点击链接后可以向zhangsan@d-heaven.com发送电子邮件. <a href=”mailto: zhangsan@d-heaven.com”>发邮件</ ...
- javascript 一个关于时间排序的算法(一个页面多个倒计时排序)
上周要做一个活动页面 秒杀列表页 需要一个时间的算法排序 自己琢磨了半天想了各种算法也没搞出来,后来问了下一个后台的php同学 他写了个算法给我看了下 ,刚开始看的时候觉得这就是个纯算法,不能转化成页 ...
- 礼仪或许就是尊重的还有一个说法——leo鉴书61
<Leo鉴书(第1辑)>已登陆百度阅读,今后还将不断更新,免费下载地址:http://t.cn/RvawZEx 礼仪从字面上就区分成"礼"和"仪"两 ...
- JavaScript一个猜数字游戏
效果图: 代码: <body> <script type="text/javascript"> window.onload = newgame; //页面载 ...
- JavaScript一个生成文档目录的实例
执行结果: <body> <script type="text/javascript"> /** * 这个模块注册一个可在页面加载完成后自动运行的匿名函数, ...
- JavaScript一个经典问题
看下面代码 <ul id="demo"> <li></li> <li></li> <li></li&g ...
- JavaScript一个类继承中实现
JavaScript类是默认原型对象继承: var Person = function() { this.name = "people"; this.hello = functio ...
- JavaScript一个google地图获取
<script type="text/javascript"> /** * 返回一个新创建的<img>元素,该元素用于在获取到地理位置信息后,显示一张Goo ...
随机推荐
- 以替换为主的疯狂填词、sub()介绍
去年接到一个任务,一直给拖到了今天,再这么下去可不行,今天我就要让你们看看我的厉害 任务是这样的:创建一个程序,读入文本文件,并让用户在该文本出现ADJECTIVE .NOUN.ADVERB或VERB ...
- [APIO2010]巡逻(树的直径)
[APIO2010]巡逻 题目描述 在一个地区中有 n 个村庄,编号为 1, 2, ..., n.有 n – 1 条道路连接着这些村 庄,每条道路刚好连接两个村庄,从任何一个村庄,都可以通过这些道路到 ...
- Unity 给FindGameObjectsWithTag排序
GameObject[] patrol = GameObject.FindGameObjectsWithTag ("Player").OrderBy (g => g.tran ...
- 【Codeforces Round #422 (Div. 2) C】Hacker, pack your bags!(二分写法)
[题目链接]:http://codeforces.com/contest/822/problem/C [题意] 有n个旅行计划, 每个旅行计划以开始日期li,结束日期ri,以及花费金钱costi描述; ...
- BZOJ3376: [Usaco2004 Open]Cube Stacking 方块游戏
[传送门:BZOJ3376] 简要题意: 约翰和贝茜在玩一个方块游戏.编号为1到n的n(1≤n≤30000)个方块正放在地上.每个构成一个立方柱. 游戏开始后,约翰会给贝茜发出P(1≤P≤100000 ...
- Git的日常处理流程
前提 本地有2个分支,一个是master,还有一个是local master 默认追踪origin/master local 通过git branch -u origin/master来映射 开发的时 ...
- Android 5.0(Lollipop)中的SurfaceTexture,TextureView, SurfaceView和GLSurfaceView
SurfaceView, GLSurfaceView, SurfaceTexture以及TextureView是Android当中名字比较绕,关系又比较密切的几个类.本文基于Android 5.0(L ...
- 17. IntelliJ IDEA + Maven创建Java Web项目
转自:https://www.cnblogs.com/Terry-Wu/p/8006475.html 1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里 ...
- 应用层协议——HTTP
HTTP: Client HTTP <--> 应用程序HTTP报文 <--> Server HTTP 应用程序 由TCP支持 Statelessprotocol:不会记录客户端 ...
- 紫书 例题 9-9 UVa 10003 (区间dp+递推顺序)
区间dp,可以以一个区间为状态,f[i][j]是第i个切点到第j个切点的木棍的最小费用 那么对于当前这一个区间,枚举切点k, 可以得出f[i][j] = min{dp(i, k) + dp(k, j) ...