• 炮制数万斤毒豆芽 广州三个黑作坊被警方捣毁 2019-08-02
  • 2018年5月后期资助项目结项名单 2019-08-01
  • 女性之声——全国妇联 2019-07-31
  • 你才是“蠢货”!土地是自然存在的地球的一部分,并不是人类劳动成果,哪来价值?土地不是劳动成果,没有价值,正如空气和阳光不是劳动成果,没有价值一样。懂吗... 2019-07-31
  • 学习贯彻落实习近平总书记重要讲话精神·奥一网(oeeee.com) 2019-07-23
  • 新生儿6种异常不用慌 2019-07-15
  • 海尔发行境外上市外资股获批 2019-07-15
  • 朝鲜将变得很富有?外媒驱动引擎是中国而非美国 2019-07-12
  • 【加拿大房产网加拿大新房加拿大房产信息网】 2019-06-22
  • 中美研究人员发现新型狗流感病毒 2019-05-29
  • 豫园商城升级改造:这些楼顶可见最好的风景--旅游频道 2019-05-14
  • 头条 —频道 春城壹网 七彩云南 一网天下 2019-05-14
  • 人为某种意识而奋斗是幸福的,获得成绩或成就更幸福。 2019-05-10
  • 【专题】省违反中央八项规定精神和“四风”问题线索举报平台 2019-05-09
  • 确定这是热身赛?吴前拼到大腿抽筋 拆绷带继续干 2019-05-09
  • CSSOM

    概要

    狭义的 DOM API 仅仅包含 DOM 树形结构相关的内容。
    DOM 中的所有的属性都是用来表现语义的属性,CSSOM 的则都是表现的属性。

    CSSOM 是 CSS 的对象模型,在 W3C 标准中,它包含两个部分:

    • 描述样式表和规则等 CSS 的模型部分(CSSOM)
    • 跟元素视图相关的 View 部分(CSSOM View)。

    CSSOM

    在实际使用中,CSSOM View 比 CSSOM 更常用一些,因为我们很少需要用代码去动态地管理样式表。

    CSSOM View

    1、窗体API

    • moveTo(x, y) 窗口移动到屏幕的特定坐标;
    • moveBy(x, y) 窗口移动特定距离;
    • resizeTo(x, y) 改变窗口大小到特定尺寸;
    • resizeBy(x, y) 改变窗口大小特定尺寸。
    • window.open(uri,target,size) 第三个参数描述窗口的尺寸信息
    window.open("about:blank", "_blank" ,"width=100,height=100,left=100,right=100" )

    ps: 出于安全考虑,一些浏览器没有实现。

    2、滚动API

    视口滚动

    在window对象上的,是顶层容器滚动提供的API,大部分移动端浏览器会对这部分api做性能优化。它和元素滚动API不同。

    • scrollX 属性,X方向上当前滚动的距离。
    • scrollY 属性,Y方向上当前滚动的距离。

    • scroll(x,y)方法,使得页滚动到指定位置。别名scrollTo,
    • scrollBy(x,y)方法,使页面滚动指定距离。

    要监听视口滚动事件,我们需要在document对象上绑定scroll事件监听函数。

    document.addEventListener("scroll",function(event){
      //......
    });

    元素滚动

    在Element类,为了支持滚动,加入了以下API。

    • scrollTop 属性,表示Y方向上的当前滚动的距离。
    • scrollLeft 属性,表示X方向上的当前滚动的距离。
    • scrollWidth 属性,元素滚动内容的宽度,一般>=元素宽度。
    • scrollHeight 属性,元素滚动内容的高度,一般>=元素高度。
    • scroll(x,y) 方法,使元素滚动到指定位置,别名scrollTo
    • scrollBy(x,y) 方法,使元素滚动指定距离。

    元素也支持scroll事件

    element.addEventListener("scroll", function(event){
      //......
    })

    3、布局API

    全局尺寸信息

    • window.innerHeight 视口的高
    • window.innerWidth 视口的宽
    • window.devicePixelRatio 像素比(DPR),物理像素和css像素单位的倍率关系。
    • window.screen

      window.screen.width, window.screen.height 设备的屏幕尺寸。

    获取Element对象的尺寸信息。

    • element.clientWidth\element.clientHeight

      属性表示元素的内部宽度\高度,以像素计。该属性包括内边距,但不包括滚动条(如果有)、边框和外边距。
      该属性值会被四舍五入为一个整数。如果你需要一个小数值,可使用 element.getBoundingClientRect()。

    • element.getBoundingClientRect()
      返回一个ClientRectd对象包含以下属性。
    bottom   float  Y 轴,相对于视口原点(viewport origin)矩形盒子的底部。只读。     
    height   float  矩形盒子的高度(等同于 bottom 减 top)。只读。     
    left       float    X 轴,相对于视口原点(viewport origin)矩形盒子的左侧。只读。      
    right      float    X 轴,相对于视口原点(viewport origin)矩形盒子的右侧。只读。      
    top      float  Y 轴,相对于视口原点(viewport origin)矩形盒子的顶部。只读。     
    width      float    矩形盒子的宽度(等同于 right 减 left)。只读。      
    x          float    X 轴,相对于视口原点(viewport origin)矩形盒子的左侧。只读。      
    y          float    Y 轴,相对于视口原点(viewport origin)矩形盒子的顶部。只读。   
    • getClientRects()
      会返回一个列表,里面包含元素对应的每一个盒所占据的客户端矩形区域.
    posted @ 2019-04-22 21:34 大黑兔 阅读(...) 评论(...) 编辑 收藏
  • 炮制数万斤毒豆芽 广州三个黑作坊被警方捣毁 2019-08-02
  • 2018年5月后期资助项目结项名单 2019-08-01
  • 女性之声——全国妇联 2019-07-31
  • 你才是“蠢货”!土地是自然存在的地球的一部分,并不是人类劳动成果,哪来价值?土地不是劳动成果,没有价值,正如空气和阳光不是劳动成果,没有价值一样。懂吗... 2019-07-31
  • 学习贯彻落实习近平总书记重要讲话精神·奥一网(oeeee.com) 2019-07-23
  • 新生儿6种异常不用慌 2019-07-15
  • 海尔发行境外上市外资股获批 2019-07-15
  • 朝鲜将变得很富有?外媒驱动引擎是中国而非美国 2019-07-12
  • 【加拿大房产网加拿大新房加拿大房产信息网】 2019-06-22
  • 中美研究人员发现新型狗流感病毒 2019-05-29
  • 豫园商城升级改造:这些楼顶可见最好的风景--旅游频道 2019-05-14
  • 头条 —频道 春城壹网 七彩云南 一网天下 2019-05-14
  • 人为某种意识而奋斗是幸福的,获得成绩或成就更幸福。 2019-05-10
  • 【专题】省违反中央八项规定精神和“四风”问题线索举报平台 2019-05-09
  • 确定这是热身赛?吴前拼到大腿抽筋 拆绷带继续干 2019-05-09
  • 5分赛app计划 pk10六码全年可用 内蒙古时时昨天结果 重庆时时彩分析软件APP 捕鱼游戏机技巧 广东十一选五走势图爱 体彩米老鼠副局长 山东时时是什么意思是什么意思是什么 玩极速时时是骗局吗 英国五分彩的开奖规律 黑龙江时时走图 山东快乐扑克3今天 山东时时犯罪记录 福建11选五玩法 竞彩篮球比分360网 广西11选5开奖公告