I have located the cause of this issue and it is down the following code.
if (window.addthis) {
window.addthis = null;
window._adr = null;
window._atc = null;
window._atd = null;
window._ate = null;
window._atr = null;
window._atw = null;
}
This was an attempt to cleanup the objects lying around when moving between pages dynamically to prevent memory issues.
addThis now provide support for this problem, their support department sent me the following link:
http://www.addthis.com/blog/2013/05/07/a-brief-history-of-using-addthis-dynamically/#.Uklx4RCKyas
and the following explanation/information:
Along with other information from my peers and such, I've come up with the proper code which should be executed when moving from virtual page to virtual page such as in your mobile application. Rather than nulling any of the AddThis related objects, they must be left alone.
When the page URL or Title (or any other AddThis configuration option) that you want to be used by our buttons changes, you should execute our method:
addthis.update(type, key, value)
It takes the three parameters: type, key, value.
Type is either "share" or "config". The key is the same key you would set according to our API documentation. What you likely need to know are just the two keys: "url" and "title". The value is of course the value you want those options to have.
After you have updated all of the options you need to update using that method, you need to invoke this method:
addthis.toolbox(cssSelector)
The cssSelector is usually going to be ".addthis_toolbox" but if for some reason you don't want to refresh all of your toolboxes, you can be more specific about it.
Once you have made those changes to your code, I believe that our tools will work properly for you and that there will be no more "null object" related javascript errors.
You can look at this JSFiddle to see an example of dynamically changing content: http://jsfiddle.net/j5addthis/r6Utv/