Fixing memory leaks
First of all, let's understand how to find out whether unwanted elements are getting generated from the script; we can use the Firebug console to do it. You can put the following code into the console of Firebug, as shown in the screenshot following it:
console.log( document.getElementsByTagName('*').length )
Tip
The preceding code will log all counts of the elements in the DOM. So, if you see the count is increasing exponentially in the subsequent usages of the page, there is a problem with your code and you should always try to delete or remove the elements that are not in use anymore.
How to do it...
After finding out, how do we debug the unwanted elements created by script?
Let's suppose that there is a JavaScript function that is getting called again and again, creating a huge stack. Let's try to debug such code using the console.trace()
function:
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <script type="text/javascript"> var i=0 function...