I know this area of code was recently fixed for IE8 issues, but something else is going wacky.
line 1065 and 1002 elem[ name ] = value; change this to try{elem[ name ] = value;} catch (err){}; and you're avoid errors being thrown in IE7 when a property is send an invalid number. You should of course be making sure to pass valid information, but in my case, there was a plugin sending bad information. This also makes IE7 behave the same way as Firefox and Safari, for more consistancy. A bug report has been filed, but this will fix it right away if need be.