Today I post to tell them about something I step yesterday with my dear friend Internet Explorer.
Yesterday we were working with my team in the office because we had to get a release and we were fixing high priority bugs in the application.
One of the bugs that I has assigned to me was that when you were in debug mode in the application IE6 dispatch a javascript error.
For putting you in the story I tell you that we have added a class was called “Debug” for be use when we was in debug mode in our application and it has several useful method for debugging taks.
In Explorer every time that we were included that JS Class (in our application classes are included JS dynamically .. “on the fly”), the browser launch a javascript error saying that “the object does not support this property”.
The object in question was “Debug” and the property was one method: “onLoad”.
After investigating a good time thinking that the problem was a bug in our code and that what happened because the class was not being properly loading or the class had some error in internal code and produce the bug when evaluated the code, We find the problem. (Approximately 2 to 3 hours later).
It turns out that IE has an object declared “Debug” which of course is not documented and which of course is useless … like as much of things in IE, (I say it serves no purpose because that the object in question is empty, because it has no methods, has no property, nothing .. is only a simple “var Debug = {}”).
Our system charge a class dynamically if it was not loaded before, watching whether the object already exists. then because the Explorer has an object with the same name that our object, our object never is charged.
As always after years working for this browser, every day we find something new.
If they want to check what I say in this post, just write on IE6 in the address bar: “javascript:alert(Debug)”.
Bye.
Navigation
- Prev post: The eating habits of programmers
- Next post: Weewar game | online geek game community

Leave a Reply