I\'ve been looking for a straight answer for this (I can think of lots of possiblities, but I\'d like to know the true reason):
jQuery provides a .data() method for
It has to do with the fact that DOM in IE is not managed by JScript, which makes it completely different environment to access. This leads to the memory leaks http://www.crockford.com/javascript/memory/leak.html. Another reason is that, when people use innerHTML to copy nodes, all those added properties are not transfered.