技术分享】WEB前端全栈成长计划(二阶段)-jQuery之DOM进阶篇(3)

网友投稿 467 2022-05-30

前两篇我们已经学习了如何通过jQuery操作DOM文档添加和修改html的各种元素,在各种示例演示过程中相信大家已经发现通过js进行的各种操作在浏览器中是无刷新更新的,这对于用户来说是非常好的体验,但大家有没有关注到一个问题就是窗口尺寸的变化,当我们使用静态布局的时候使用的是自己开发环境的浏览器尺寸,在无法确认客户浏览器的尺寸的情况下,我们的静态布局在别人电脑上的可视效果会大打折扣,那我们如何解决这个问题呢?jQuery中也给我们提供了处理html元素尺寸方法。

本篇主要讲解如何通过jQuery来处理html元素尺寸,并通过获取body的尺寸来设定我们设置的html元素尺寸,来处理客户端上浏览器的尺寸变化的响应。

尺寸方法

jQuery提供了多个处理尺寸的方法

width() 设置或获取html元素的宽度,不包括边框和内外边距

height() 设置或获取html元素的高度,不包括边框和内外边距

innerWidth() 获取html元素的宽度,仅包括内边距

innerHeiht() 获取html元素的高度,仅包括内边距

outerWidth() 获取html元素的宽度,仅包括边框和内边距

outerHeight() 获取html元素的高度,仅包括边框和内边距

扩展阅读:window 浏览器对象模型(BOM)

扩展部份可自行学习,主要是了解一下如何通过JavaScript获取浏览器window属性的方法

演示代码通用部份

    我是div1,我在body内

    

    

    

    

width() 、height()使用

width() 设置或获取html元素的宽度,不包括边框和内外边距

height() 设置或获取html元素的高度,不包括边框和内外边距

【技术分享】WEB前端全栈成长计划(二阶段)-jQuery之DOM进阶篇(3)

width/height()获取div1和body宽与高
      

innerWidth()、innerHeight()使用

innerWidth() 获取html元素的宽度,仅包括内边距

innerHeiht() 获取html元素的高度,仅包括内边距

innerWidth/innerHeight()获取div1宽与高
      

outerWidth()、outerHeight()使用

outerWidth() 获取html元素的宽度,仅包括边框和内边距

outerHeight() 获取html元素的高度,仅包括边框和内边距

outerWidth/outerHeight()获取div1宽与高
      

根据body尺寸设置html元素尺寸

通过prompt模拟body的尺寸来改变div1的大小,当静态布局完成后,我们可以根据body的尺寸来改变我们布局中html元素的各种属性来保证客户端窗口显示效果,当然现在有很多成熟的前端框架本身都具备这种能力,在这里只是例举一个思路。

输入body尺寸改变div1大小       

box-sizing 属性的影响

当html元素设置box-sizing属性后,通过width/innerWidth/outerWidth()等方法获取元素width属性时会减去padding和border的值,height方法获取时也亦是如此。

    

    

    

    

      box-sizing属性对三种方法获取宽度的影响       

写到这里jQuery之DOM进阶篇就结束了,希望能对和我一样的初学者有所帮助!

书山有路勤为径,学海无涯苦作舟!!!

zhoubo

2020.8.10 at home

jQuery

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:游戏行业转型阵痛显现,数字天空借力华为云DevCloud成功突围
下一篇:《大数据技术丛书Flink原理、实战与性能优化》
相关文章