Hello Dave.
I agree with you, as you are on 100% right that we all have to follow the standards to avoid any conflicts in future. But thing is that there are special situations when it is needed to use custom tags. For example content and data user input interfaces, when you want to develop as much as possible user friendly and convenient interface that will work for people that hasn't much skills in Web (for example, it is much easier to explain to the user only the tag rules of XML syntaxes instead of explaining to them more stuff with attributes, etc). There are a lot of such specific situations and I can provide more cases when it will be very usable. And we can still use modified innerShiv for older IEs, but the developed api with it starting suffer in performance. Native built in jQuery innerShiv support works faster and it is really more convenient.
As for implementation to jQuery, I just want to propose to add some jQuery method that will be updating the "nodeNames" and "rnoshimcache" variables. For example something like this:
customNodes: function(text){
nodeNames += text;
rnoshimcache = new RegExp("<(?:" + nodeNames + ")", "i")
}
And if developer will need to add some extra node names, he will just do:
$.customNodes
("|page|chapter");
Or just to make those variables to be not local, so developers will be able to modify them per their own.
Thanks in advance!
Regards,
Max