问题
Which JavaScript 框架(原型、script.aculo.us、Mootools、MochiKit...)不错的 CSS 规则编辑支持?
这是关于改变风格规则。我希望有动态 CSS 类哪个改变。例子:
<style>
#answer, .reveal { display: none; color: blue; }
#answer { /* additional stuff */ }
</style>
现在,通过 JavaScript,我想更改其中包含“display: none”的规则。 – 我确信有时这是正确的做法;当这不是正确的方法时,我不会寻找替代方案。
哪个框架可以让以下事情变得简单:
- 从所有规则中选择一个规则(例如“#answer,.reveal”)
- 所选规则对于“显示”有什么价值?
- 从规则中删除“显示”属性
(2. 和 3. 单独使用 DOM 就很容易,只要我从框架返回 CSS 规则的句柄)
不够好的框架:
例如,YUI 的 StyleSheet 一次只能在一张表中搜索规则(有限,但对我来说足够了),但它不能像我的第一个示例一样显示、编辑或检索多选择器规则(对我来说太有限了)。
YUI 也无法获取单个属性(底层 DOM 可以,但无法通过 YUI 获取该结构)。你could不过,如果您通过 YUI 方式掌握了规则,请单独删除“display”属性。
Dojo 在 dojox.html.styles 下有一些记录不良且不完整的内容
Ext JS 有 Ext.util.CSS。我检查了代码并发现了 getRule() 中的一个错误...否则它的选择器匹配相当草率(不良的 IE 影响),这使得它不利于多选择器规则。它也无法通过 API 删除属性,但可以为您提供 CSSRule,以便您可以自己执行此操作。 – CSS 树遍历非常原始:媒体规则或导入不会下降。
PD:
$('.reveal').css(...whatever...) 不是答案,因为它根本不触及 CSS 规则(而是触及某些元素的 CSS 属性)!