知识大全 20行代码实现的一个CSS覆蓋率测试脚本

Posted 规则

篇首语:丈夫不报国,终为愚贱人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 20行代码实现的一个CSS覆蓋率测试脚本相关的知识,希望对你有一定的参考价值。

20行代码实现的一个CSS覆蓋率测试脚本  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  document styleSheets里保存了当前页面上所有CSS规则的集合 通过它可以遍历出页面<style>里定义的所有 selector 访问selectorText属性可得选择器的匹配规则 然后将规则规则传递给 document querySelectorAll 即可获取页面内匹配此规则的元素列表 这里我们只求CSS规则的覆蓋率 所以访问 querySelectorAll() length 即可 通过排序就可看出各个CSS使用情况 代码很简单

复制代码 代码如下: var usage = []; var sheets = document styleSheets;

  for(var i = sheets length ; i != ; i )     var rules = sheets[i] rules;     for(var j = rules length ; j != ; j )         var rule = rules[j];         var text = rule selectorText;         usage push(name: text count: document querySelectorAll(text) length);     usage sort(function(a b)return a count b count);

  for(var i = usage length ; i != ; i )     console log("选择器 " + usage[i] name + "nt匹配数 " + usage[i] count);

  呼出F 把代码粘到console里回车即可

  当然由于权限问题 外部导入的CSS无论如何都访问不到 暂时先不考虑了 至于不支持styleSheets的破IE嘛 可以考虑用expression或者behaviour htc 改天试试看 纯JS实现就到此 以后配合本地程序实现外部CSS的分析 顺便贴个测试结果  

  

  哪些CSS没用到一目了然  

  

cha138/Article/program/Java/JSP/201311/20423

相关参考

知识大全 两个很详细的shell 实例代码

两个很详细的shell实例一般编程步骤  现在我们来讨论编写一个脚本的一般步骤任何优秀的脚本都应该具有帮助和输入参数并且写一个伪脚本(frameworksh)该脚本包含了大多数脚本都需要的框架结构是一

知识大全 用Java测试网络代码

用Java测试网络代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  网络代码被证明是很难进行完

知识大全 巧用工具 为Java程序生成代码做覆蓋统计

巧用工具为Java程序生成代码做覆蓋统计  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  曾经为大

知识大全 JS 代码实例:实现随机加载不同的CSS样式

JS代码实例:实现随机加载不同的CSS样式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  随机载

知识大全 jscript错误代码及相应解释大全

JScript运行时错误JScript运行时错误是指当JScript脚本试图执行一个系统不能运行的动作时导致的错误当正在运行脚本计算变量表达式或者正在动态分配内存时出现JScript运行时错误时错误号

知识大全 1Z0-025 经典考试回忆

1Z0-025经典考试回忆  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  覆蓋率可以不过答案不是

知识大全 100秒内蓝屏死机的脚本源代码

  声明此程序只供研究使用如用做不正当用途后果自负!  <>  <head>  <scriptLANGUAGE=javascript>  functionleave

知识大全 jquery返回顶部代码

  分享一个jquery在返回顶部在代码不依赖CSS  $("body")append("∧   ");  vartotop=$("#toTop");  totopbind(  click:

知识大全 1100行代码设计一个线程池

  在现代的操作系统中有一个很重要的概念――线程几乎所有目前流行的操作系统都支持线程线程来源于操作系统中进程的概念进程有自己的虚拟地址空间以及正文段数据段及堆栈而且各自占有不同的系统资源(例如文件环境

知识大全 PHP脚本语言中有“漏洞”

PHP脚本语言中有“漏洞”  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  据一个开放源代码软件开