• BOM&DOM


    1、BOM 浏览器对象模型

    提供了独立于内容而与浏览器窗口进行交互的对象。描述了与浏览器进行交互的方法和接口,可以对浏览器窗口进行访问和操作,譬如可以弹出新的窗口,改变状态栏中的文本,对Cookie的支持,IE还扩展了BOM,加入了ActiveXObject类,可以通过js脚本实例化ActiveX对象等等)

    2、DOM 文档对象模型

    DOM是针对XML的基于树的API。描述了处理网页内容的方法和接口,是HTML和XML的API,DOM把整个页面规划成由节点层级构成的文档。DOM本身是与语言无关的API,它并不与Java,JavaScript或其他语言绑定。

    BOM  

      (Browser Object Model)浏览器对象模型,控制浏览器的一些行为

    window对象  

      代表一个HTML文档

    属性
      页面导航的5个属性 self, parent, top, opener, frames

    方法
      弹出对话框 3个: alert, confirm, prompt
      页面定时器. setInterval, clearInterval, setTimeout, clearTimeout
      窗口打开关闭  open,  close

    History

      浏览器的历史记录   前进, 后退.

    属性 length

    方法 forward 前进, back 后退, go 前进/后退

    Location 浏览器地址栏   跳转,刷新

    属性 href  改变当前页面位置

    方法 reload 刷新

    DOM  

      (Document Object Model)  文档对象模型   让JS 和 HTML ,css结合. 可以使用 JS 来控制他们.

    原理  将页面中所有内容, 都封装成了对象.

    Dom中的五类对象
      Document 文档(重点)
      Element 元素(重点)
      Attribute 属性
      Text 文本
      Commons 注释
    以上五类对象抽取了一个父类: Node

    自身属性 nodeType, nodeName, nodeValue

    导航属性 

      父找儿  firstChild, lastChild, childNodes
      儿找父: parentNode (重要)
      找兄弟: nextSibling, priviousSibling

    获取Element的方式(重点):
    从Document中获得ELement:
      1.getElementById

    2.getElementsByTagName
      3.getElementsByClassName
      4.getElementsByName
    从Element中获得ELement:
      1.getElementsByTagName
      2.getElementsByClassName

    DOM中的事件
    给Element对象添加一个Function类型的属性. 那么这个Function的运行时机与属性的名称有关.例如: 
    属性名 触发时机
      onClick 单击  ondblclick 双击  onload 当加载完毕  onchange 当内容改变  onblur 当失去焦点  onfocus 当得到焦点

    在事件中我们想要获得事件的详情, 那么我们需要拿到Event(侦探)对象.
    获得  事件函数是由浏览器在对应时机调用的, 浏览器在调用的时候, 已经Event传给我们了.对于我们来讲. 接受下就可以了.

     

    属性
      keyCode   按键的编码
      button     鼠标按键的编码
      clientX/clientX 鼠标所在位置的x, y轴坐标
    方法 
      preventDefault  阻止默认行为. 例如 在点击submit按钮时,表单提交就是默认动作.
      stopPropergation  停止事件的继续传播. 例如  在嵌套的DIV中, 点击里面的div, 同时也会触发外层div的onclick事件. 如果不想触发外层使用该方法.

     

    Dom中常见操作

     


      创建元素: document.createElement
      添加: element.appendChild  ==> 添加到末尾
         element.insertBefore ==> 指定添加位置

      removeAttribute 删除属性
      removeChild 删除子节点

      replaceChild 改元素
      setAttribute 改属性
     

    getAttribute 查属性值
      getElementById
      getElementsByTagName
      getElementsByClassName
      getElementsByName

    DHTML技术
      由微软提出, Dynamic HTML 动态网页技术. 整合了 HTML CSS Javascript DOM 4个技术.
    可以理解为对DOM对象的增强: 增加了一些新的属性和方法.让我们开发更加便捷.

     

  • 相关阅读:
    HDU 1348 Wall
    HDU 2202 最大三角形
    HDU 2215 Maple trees
    HDU 1147 Pick-up sticks
    HDU 1392 Surround the Trees
    风语时光
    HDU 1115 Lifting the Stone
    HDU 1086 You can Solve a Geometry Problem too
    HDU 2108 Shape of HDU
    HDU 3360 National Treasures
  • 原文地址:https://www.cnblogs.com/xichen25/p/9857086.html
Copyright © 2020-2023  润新知