How to load local script files as fallback in cases where CDN are blocked/unavailable? [duplicate]
To confirm that cdn script loaded you can check for existence any variable/function this script defines, if it is undefined - then cdn failed and you need to load local script copy.
On this principle are based solutions like that:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script><script>window.jQuery || document.write('<script src="js/libs/jquery-1.5.1.min.js">\x3C/script>')</script>
(if there is no window.jQuery property defined cdn script didn't loaded).
You may build your own solutions using this method. For instance, jquery tooltip plugin creates $.tooltip()
function so we can check it with code like this:
<script> if (typeof $.tooltip === 'undefined') { document.write('<script src="js/libs/jquery.tooltip.min.js">\x3C/script>'); }</script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script><script>!window.jQuery && document.write(unescape('%3Cscript src="js/libs/jquery-1.4.2.js"%3E%3C/script%3E'))</script>
Taken from HTML5 Boilerplate.