假设这个css样式表:
template.css
p{color: red; margin: 0; padding: 10px;}
div{background: red; color: white;}
/*.....
and a lot of stylesheet rules
*/
现在有一段时间后我会更改为template.css规则
p{color: red; margin: 0; padding: 10px;}
div{background: red; color: blue;}/* modified previous rules too*/
/*.....
and a lot of stylesheet rules
....
added stylesheet rules*/
现在问题从这里开始:
我想检查我的样式表是否已更改:
var storedss = 0; //0 represents not changed (false)
//if stylesheet has been changed from previous state of stylesheet ???
//how to check ????
storedss = 1; // 1 represents changed (true)
//now perform some action
if(storedss){
//do stuff here
//and at last reset to 0
storedss = 0;
}
这可能吗?
答案 0 :(得分:-1)
这是不可能的。浏览器将解析CSS文件并应用于DOM节点。因此,我们的javascript没有进行比较/跟踪。
只有当您有意保留所有DOM节点的样式信息的备份副本时,您才可以比较并确定它是否已在某个所需位置进行了修改。
即便如此,除了清除缓存之外我还不知道如何更改缓存。唯一的另一种方法是重新加载页面。