How to force no cache using javascript and basic script loading

ParoX picture ParoX · Feb 22, 2012 · Viewed 16.5k times · Source

I have a bookmarklet that keeps using cache versions of http://www.imvu-e.com/products/hpv/download/HPV.js. I want it to never cache it and always reload it.

This is the hyperlink I use to save the bookmarklet (which users drag to browser toolbar that installs it):

<a href="javascript:(function(){
     c = document.createElement(&quot;script&quot;);
     c.type = &quot;text/javascript&quot;;
     c.src = &quot;http://www.imvu-e.com/products/hpv/download/HPV.js&quot;;

     c.onload = c.onreadystatechange = function()                    {
            if ( ! (d = this.readyState) || d == &quot;loaded&quot; || d == &quot;complete&quot;){
                document.documentElement.childNodes[0].removeChild(c);
                version='beta';
            }
     };
     document.documentElement.childNodes[0].appendChild(c);
})();">Run HPV</a>

Answer

Prescott picture Prescott · Feb 22, 2012

Add a useless querystring to the end of your url:

c.src = "http://www.imvu-e.com/products/hpv/download/HPV.js?" + (new Date).getTime();