首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

React技巧之使用ref获取元素宽度

/bobbyhadz.com/blog/react-get-element-width-ref[1] 作者:Borislav Hadzhiev[2] 正文从这开始~ 总览 在React中,使用ref获取元素宽度...在useLayoutEffect钩子中,更新宽度state变量。 使用offsetWidth属性获取元素宽度。...offsetWidth属性以像素为单位返回元素宽度,包括任何边框、内填充和垂直滚动条(如果存在的话)。 offsetHeight属性返回元素高度,单位是像素,包括垂直内填充和边框。...或者,你可以使用clientWidth属性,它返回元素宽度,单位是像素,包括内填充,但不包括边框、外边距和垂直滚动条(如果存在的话)。...> { setWidth(ref.current.clientWidth); setHeight(ref.current.clientHeight); }, []); 总结 我们通过ref来获取元素宽度和高度

3.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    js网页如何获取手机屏幕宽度

    document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:document.body.offsetWidth (包括边线宽...) 网页可见区域高:document.body.offsetHeight (包括边线宽) 网页正文全文宽:document.body.scrollWidth 网页正文全文高:document.body.scrollHeight...网页被卷去高:document.body.scrollTop 网页被卷去左:document.body.scrollLeft 网页正文部分上:window.screenTop 网页正文部分左...:window.screenLeft 屏幕分辨率高:window.screen.height 屏幕分辨率宽:window.screen.width 屏幕可用工作区高度:window.screen.availHeight...屏幕可用工作区宽度:window.screen.availWidth 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/112719.html原文链接:https:

    10.9K30

    js获取元素几种形式

    通过id获取元素 document.getElementById('div');//获取id为div元素 通过class获取 document.getElementsByClassName('top'...);//获取页面中所有的class为top元素集合 通过标签名获取 document.getElementsByTagName('p');//获取页面中所有的标签为p元素集合 通过name获取 document.getElementsByName...('user');//获取页面中所有的name为user元素集合 注意:通过class,name标签名抓取元素是一个集合,即使该类只有一个符合要求元素目标,也返回是一个集合,因此可以存储变量,通过变量名...[0]获得第一个符合要求标签目标....简单可以将返回的当做一个存储符合数组,通过下标进行找到指定位置. 当然也可以使用数组方法返回,集合目标数. alert(tops.length)可以提示出class为top目标数

    25.3K30

    jquery获取第几个子元素_js获取元素指定子元素

    可以这样理解,页面中元素有相同元素 ,并且里面又包含li元素,那么就取第一个li元素,每个子类集合都要进行判断,直到找出所有符合要求li元素; :last-child:这个也与上面相对了,...An+B所有子节点,比如3n+1返回所处位置为父节点子元素是3倍数加1那个子元素; :even:页面范围内处于偶数位置元素,如:li:even返回全部偶数li元素; :odd:页面范围内处于奇数位置元素...(n):第n个匹配元素(不包括)之后元素(n从0开始),如:ul:gt(2)返回从第3个ul开始所有ul元素(含第三个); :lt(n):第n个匹配元素(不包括)之前元素(n从0开始),如:ul...F所有子元素(F可以为E子类子类,甚至更远); E>F:匹配父元素E下所有标签名为F直接子元素; E+F:匹配所有标签名为F元素,并且有E类型兄弟节点在该F元素之前(E,F紧挨着); E~...C等效于*.C; E#I:匹配id为I所有元素E,#I等效于*#I; E[A]:匹配带有属性A所有元素E; E[A=V]:匹配所有属性A值为V元素E; E[A^=V]:匹配所有元素E,且A属性值是

    27.2K30

    js获取元素样式之getComputedStyle方法

    习惯了jquery同学应该都知道获取元素样式方式可以直接写成(obj).css(style);更方便获取高度宽度等一些样式可以直接使用(obj).height()和 一、 getComputedStyle...是什么 getComputedStyle是一个可以获取当前元素所有最终使用CSS属性值。...为什么要用这个属性呢,是因为通过document.getElementById(element).style.xxx可以获取元素样式信息但是对于通过class属性引用外部样式表就获取不到了。...但是getComputedStyle属性是只读属性,只能读属性,不能设置,但是他可以获取元素最终样式信息。...例如,我们要获取一个元素高度,可以类似下面的代码: alert((element.currentStyle?

    22.6K30

    js获取屏幕以及元素宽高方法

    window.screen.width 屏幕可用工作区高度:window.screen.availHeight 屏幕可用工作区宽度:window.screen.availWidth 二.body相关...网页被卷去高:document.body.scrollTop 网页被卷去左:document.body.scrollLeft 三.滚动相关 scrollHeight: 获取对象滚动高度。...scrollWidth: 获取对象滚动宽度 document.documentElement.scrollTop 垂直方向滚动值 四.位置精确定位 scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容最左端之间距离...scrollTop:设置或获取位于对象最顶端和窗口中可见内容最顶端之间距离 offsetLeft:获取对象相对于版面或由 offsetParent 属性指定父坐标的计算左侧位置 offsetTop...:获取对象相对于版面或由 offsetTop 属性指定父坐标的计算顶端位置 五.坐标轴 event.clientX 相对文档水平座标 event.clientY 相对文档垂直座标 event.offsetX

    6.8K20

    js、jQuery 获取文档、窗口、元素各种值

    获取竖直滚动条到顶部垂直高度 (即网页被卷上去高度)(ie浏览器): document.documentElement.scrollTop; 获取水平滚动条到左边水平宽度 (即网页被卷左去宽度...; 获取元素宽度:clientWidth;(width+padding) 获取元素高度:clientHeight;(height+padding) 获取元素宽度:offsetWidth;(width...(即网页被卷左去宽度):$(document).scrollLeft(); 获取或设置元素宽度:$(obj).width();(width) 注意只是元素宽度,不包括padding 获取或设置元素高度...:$(obj).height();(height) 注意只是元素高度,不包括padding 获取或设置元素宽度:$(obj).innerWidth(); (width + padding) 获取或设置元素高度...获取或设置元素高度:$(obj).outerHeight(); (height + padding + border) 获取元素宽度:$(obj).outerWidth(true); (width

    14.1K32

    JS offsetParent属性:获取最近上级定位元素

    js中,offsetParent 属性表示最近上级定位元素。...要获取相对父级元素位置,可以先判断 offsetParent 属性是否指向父元素,如果是,则直接使用 offsetLeft 和 offsetTop 属性获取元素相对于父元素距离;否则分别获得当前元素和父元素距离窗口坐标...//获取指定元素距离父元素左上角偏移坐标//参数:e表示获取位置元素//返回值:返回对象直接量,其中属性x表示x轴偏移距离,属性y表示y轴偏移距离function getP (e) { if...offsetLeft属性值 var y = e.offsetTop; //读取offsetTop属性值 } else { //否则调用getW()扩展函数获取元素偏移位置,并返回它们差值..."x" : x, "y" : y },}下面调用该扩展函数获取指定元素相对父元素偏移坐标。

    7.7K40

    JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度

    scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容最左端之间距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容最顶端之间距离 scrollWidth:获取对象滚动宽度...offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定父坐标的高度 offsetLeft:获取对象相对于版面或由 offsetParent 属性指定父坐标的计算左侧位置...,若要得到窗口尺寸,需要注意根元素尺寸,而不是元素。...-- var winWidth = 0; var winHeight = 0; function findDimensions() //函数:获取尺寸 { //获取窗口宽度...(4)再通过深入Document内部对body进行检测,获取窗口大小,并存储在前述两个变量中。 (5)在函数最后,通过按名称访问表单元素,结果输出至两个文本框。

    8.1K30

    JS和JQuery获取当前元素兄弟及父级等元素方法

    jQuery获取: jQuery.parent(expr),找父亲节点,可以传入 expr 进行过滤,比如 $("span").parent() 或者 $("span").parent(".class"...) jQuery.parents(expr),类似于 jQuery.parents(expr) ,但是是查找所有祖先元素,不限于父元素 jQuery.children(expr),返回所有子节点,这个方法只会返回直接孩子节点...,而 jQuery.find(),返回结果,不会有初始集合中内容,比如 $("p").find("span") ,是从 元素开始找 ,等同于 $("p span") JS获取:...;   //获得s最后一个子节点 JS获取节点父级,子级元素JS方法会比JQUERY麻烦很多,主要则是因为FF、谷歌浏览器会把你换行也当作DOM元素:空text元素,目前IE也是这样       原生JS获取ID为test元素元素

    12.6K10
    领券