Prototype JS 中的简单 getCompulatedStyle?
是否有一种简单的跨浏览器方法可以获取 PrototypeJS 中元素的计算样式,而无需检查 document.defaultView... 和其他属性? ...这样代码看起来像
var elt = $$('.xyz')[k],
border = elt.getComputedStyle('border-bottom-width')
PrototypeJs 提供了返回计算的 getDimensions
、-Width
和 -Height
方法> 尺寸,但无法获得其他计算样式,例如边框、背景等。
我发现了几个独立的 getCompulatedStyle 的实现,但也许 PrototypeJS 有一个补丁/插件可以做到这一点?
Is there an easy cross-browser way to get computed style of an element in PrototypeJS, without checking document.defaultView... and other properties? ...so that the code looked like
var elt = $('.xyz')[k],
border = elt.getComputedStyle('border-bottom-width')
PrototypeJs provides getDimensions
, -Width
, and -Height
methods that return computed dimensions, but there's no way to get other computed styles, like borders, backgrounds, etc.
I've found several stand-alone implementations of getComputedStyle, but maybe there's a patch/plugin for PrototypeJS that does that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Prototype 的
getStyle
方法封装了大部分跨浏览器计算您正在寻找的风格作品:来自文档:
但是,此方法不会返回 Internet Explorer <= 8 中样式表中应用的样式,因为它使用 getCompulatedStyle() 方法,这对于版本 8 及更低版本来说是不正确的方法: http://www.quirksmode.org/dom/w3c_css.html
Prototype's
getStyle
method encapsulates most of the cross-browser computed style work you're looking for:From the docs:
However, this method will not return styles applied in a stylesheet in Internet Explorer <= 8, because it uses the getComputedStyle() method, which is the incorrect method for versions 8 and lower: http://www.quirksmode.org/dom/w3c_css.html
据我所知没有。
这可能是因为“获取计算样式”实现如此不同,以至于几乎不可能保证统一的结果(这使得它们对于跨浏览器框架毫无用处)。
例如,正如我在 这个问题。
Not that I know of.
This is probably because the "get computed style" implementations are so different that it's hardly possible to guarantee uniform results (Which renders them useless for a cross-browser framework).
For example, getting the computed font size cross-browser is not always possible, as I learned in this question.