switch001,
<html>
<head>
<style>
span{display: block}
</style>
</head>
<body>
<button id="rgDate">date</button>
<button id="rgError">error</button>
<button id="rgWarning">warning</button>
<button id="rgNotice">notice</button>
<button id="rgDebug">debug</button>
<br>
<div id="wrapper">
<span class="rgDate">date</span>
<span class="rgError">error</span>
<span class="rgWarning">warning</span>
<span class="rgNotice">notice</span>
<span class="rgDebug">debug</span>
<span class="rgDate">date</span>
<span class="rgError">error</span>
<span class="rgWarning">warning</span>
<span class="rgNotice">notice</span>
<span class="rgDebug">debug</span>
<span class="rgDate">date</span>
<span class="rgError">error</span>
<span class="rgWarning">warning</span>
<span class="rgNotice">notice</span>
<span class="rgDebug">debug</span>
</div>
<script>
s=wrapper.innerHTML
fltr=function(){
var re=new RegExp('<span class="'+this.id+'">[^>]+>', 'g')
wrapper.innerHTML=s.match(re).join("")
}
;[].forEach.call(document.querySelectorAll("button"), function(b){b.onclick=fltr})
</script>
</body>
</html>
На файле 540кб на слабой машине, скорость менее секунды