getBoundingClientRect
全部标签 StackOverflow是loadedwithquestions关于如何检查一个元素是否真的在视口(viewport)中可见,但他们都在寻找一个bool值答案。我对获取元素的实际可见区域很感兴趣。functiongetVisibleAreas(e){...returnrectangleSet;}更正式地说-元素的可见区域是CSS坐标中的一组(最好是不重叠的)矩形,elementFromPoint(x,y)如果点(x,y)包含在(至少)集合中的一个矩形中,将返回该元素。在所有DOM元素(包括iframe)上调用此函数的结果应该是一组非重叠区域集,其中union是整个视口(viewpor
StackOverflow是loadedwithquestions关于如何检查一个元素是否真的在视口(viewport)中可见,但他们都在寻找一个bool值答案。我对获取元素的实际可见区域很感兴趣。functiongetVisibleAreas(e){...returnrectangleSet;}更正式地说-元素的可见区域是CSS坐标中的一组(最好是不重叠的)矩形,elementFromPoint(x,y)如果点(x,y)包含在(至少)集合中的一个矩形中,将返回该元素。在所有DOM元素(包括iframe)上调用此函数的结果应该是一组非重叠区域集,其中union是整个视口(viewpor
在MDN的descriptionofElement.clientWidth它说。注意:我已经根据@potatopeelings更新了MDN回答。TheElement.clientWidthpropertyistheinnerwidthofanelementinpixels.Itincludespaddingbutnottheverticalscrollbar(ifpresent,ifrendered),borderormargin.Thispropertywillroundthevaluetoaninteger.Ifyouneedafractionalvalue,useelement.
在MDN的descriptionofElement.clientWidth它说。注意:我已经根据@potatopeelings更新了MDN回答。TheElement.clientWidthpropertyistheinnerwidthofanelementinpixels.Itincludespaddingbutnottheverticalscrollbar(ifpresent,ifrendered),borderormargin.Thispropertywillroundthevaluetoaninteger.Ifyouneedafractionalvalue,useelement.
我找遍了,没找到。我正在尝试获取div的宽度,但如果它有小数点,它会将数字四舍五入。示例:#container{background:blue;width:543.5px;height:20px;margin:0;padding:0;}如果我执行$('#container').width();它将返回543而不是543.5。我如何让它不舍入数字并返回完整的543.5(或任何数字)。 最佳答案 使用nativeElement.getBoundingClientRect而不是元素的样式。它在IE4中引入,并被所有浏览器支持:$("#co
我找遍了,没找到。我正在尝试获取div的宽度,但如果它有小数点,它会将数字四舍五入。示例:#container{background:blue;width:543.5px;height:20px;margin:0;padding:0;}如果我执行$('#container').width();它将返回543而不是543.5。我如何让它不舍入数字并返回完整的543.5(或任何数字)。 最佳答案 使用nativeElement.getBoundingClientRect而不是元素的样式。它在IE4中引入,并被所有浏览器支持:$("#co
获取页面上元素相对于视口(viewport)(而不是文档)的位置的正确方法是什么?jQuery.offset功能似乎很有希望:Getthecurrentcoordinatesofthefirstelement,orsetthecoordinatesofeveryelement,inthesetofmatchedelements,relativetothedocument.但那是相对于文档而言的。是否有返回相对于视口(viewport)的偏移量的等效方法? 最佳答案 确定元素大小和位置的最简单方法是调用它的getBoundingCli
获取页面上元素相对于视口(viewport)(而不是文档)的位置的正确方法是什么?jQuery.offset功能似乎很有希望:Getthecurrentcoordinatesofthefirstelement,orsetthecoordinatesofeveryelement,inthesetofmatchedelements,relativetothedocument.但那是相对于文档而言的。是否有返回相对于视口(viewport)的偏移量的等效方法? 最佳答案 确定元素大小和位置的最简单方法是调用它的getBoundingCli
我正在向我的网页添加一些SVG路径,但在使用Firefox43.0时遇到问题。看来,当我将transform:scale(0.1)应用于我的路径时,Firefox不会更新边界客户端矩形(通过getBoundingClientRect())这是转换前我的Path的屏幕截图,以及正确的边界矩形:这里是应用了变换,视觉效果清晰地位于边界框之外:相比之下,Chrome正在按预期更新其边界框。(注意受限的比例。)这个问题在Chrome或Edge上都不存在。我确实找到了thisoldbugfrom2012其中表示问题已在12.0版中修复,文档说明:StartingfromGecko12.0(Fir
所以我有一个项目,我试图最大限度地优化一个相当复杂的Javascript函数-部分原因是它应该在智能手机(Webkit)上运行并且每一点都很重要。我一直在使用各种调试和计时技术来检查我的代码并重写所有可能很慢的东西——比如基于jQuery的部分,而native可能做得更好等等。该函数所做的基本上是获取一串html文本并将其剪切以完全适合3个没有固定位置或大小的DIV(客户端模板机制)。目前,整个函数在iPad浏览器中执行大约需要100毫秒(但在生产环境中,理想情况下我需要执行200次),问题是在这100毫秒中,至少有20毫秒是因为这一行代码(3个循环):varmaxTop=$(cur)