我甚至觉得有点荒谬,但我做过的一些研究让我觉得它可能会有可能吗?
假设我有一个像这样的内部CSS规则:
xs-app.json
然后我使用jQuery来改变div的宽度值,如下所示:
<style>div {width 50px;}</style>
是否可以使用JavaScript从原始CSS规则中检索原始宽度50px?
或者是首先在javascript变量中保存50px的原始宽度值并使用相同的变量稍后检索它的唯一方法?
理论上...原始值仍然包含在页面的源代码中并且可以访问...而且我并不是真的想去那么远(在javascript中编写CSS解析器)。
或者,当浏览器呈现DOM时,页面的来源基本上不存在了吗?
感谢阅读。
答案 0 :(得分:0)
据我所知,不可能。正如Barmar所说,最简单的方法是删除样式,获取原始值,然后再添加样式。
这样的事情应该有效:
function getOriginalCSS(target,styles){
var output = {}
for(var i=0; i<styles.length; i++){
var style = styles[i]
var current = target.css(style)
target.css(style,'')
output[style] = target.css(style)
target.css(style,current)
}
return output
}
致电getOriginalCSS($('div'),['width'])
会给您{width:'50px'}
答案 1 :(得分:0)
最简单的方法是在更改CSS之前保存以前的值,然后在需要时重新应用旧值。
任何其他方式都是乏味的,坦率地说不值得解决这个问题。