I noticed an issue whereby IE9 (can't recall if other versions of IE do the same) record classes adjacent to each other in opposite order than defined. So if an original css selector was defined as .clsA.clsB { ... }, IE9 would actually store it as .clsB.clsA { ... }, causing this code to not recognise it as the same. I've added a method which takes a css selector, and swaps any adjacent classes, and then tests for that on top of the existing selector text test. Don't know if you're still around working on this as you haven't been active for a little while, but I thought I'd let you know about it in case.
... order i.e. .clsA.clsB and .clsB.clsA
I noticed an issue whereby IE9 (can't recall if other versions of IE do the same) record classes adjacent to each other in opposite order than defined. So if an original css selector was defined as .clsA.clsB { ... }, IE9 would actually store it as .clsB.clsA { ... }, causing this code to not recognise it as the same. I've added a method which takes a css selector, and swaps any adjacent classes, and then tests for that on top of the existing selector text test. Don't know if you're still around working on this as you haven't been active for a little while, but I thought I'd let you know about it in case.