我最近继承了一个庞大的代码库,其中包含了整个Modernizr插件。我试图找出代码库中实际使用的功能检测,以便我可以删除所有未使用的功能检测或删除除html5 shiv之外的所有功能。
有没有一种很好的方法来解决这个问题,或者是一个巨大的正则表达式搜索所有modernizr类(以及no-prefix)和javascript方法是唯一的选择?
答案 0 :(得分:0)
我决定使用正则表达式路由,所以这里是我在搜索代码库时使用的正则表达式:
(\.(no\-)?flexbox|\.(no\-)?flexbox-legacy|\.(no\-)?canvas|\.(no\-)?canvastext|\.(no\-)?webgl|\.(no\-)?touch|\.(no\-)?geolocation|\.(no\-)?postmessage|\.(no\-)?websqldatabase|\.(no\-)?indexeddb|\.(no\-)?hashchange|\.(no\-)?history|\.(no\-)?draganddrop|\.(no\-)?websockets|\.(no\-)?rgba|\.(no\-)?hsla|\.(no\-)?multiplebgs|\.(no\-)?backgroundsize|\.(no\-)?borderimage|\.(no\-)?borderradius|\.(no\-)?boxshadow|\.(no\-)?textshadow|\.(no\-)?opacity|\.(no\-)?cssanimations|\.(no\-)?csscolumns|\.(no\-)?cssgradients|\.(no\-)?cssreflections|\.(no\-)?csstransforms|\.(no\-)?csstransforms3d|\.(no\-)?csstransitions|\.(no\-)?fontface|\.(no\-)?generatedcontent|\.(no\-)?video|\.(no\-)?audio|\.(no\-)?localstorage|\.(no\-)?sessionstorage|\.(no\-)?webworkers|\.(no\-)?applicationcache|\.(no\-)?svg|\.(no\-)?inlinesvg|\.(no\-)?smil|\.(no\-)?svgclippaths)
我认为它匹配modernizr的所有可能的css钩子。要查找Javascript用法,只需搜索" Modernizr。"