Garric
Garric

Reputation: 552

How to detect if Moment js is loaded from CDN

I want to create a fallback if moment js is not loaded from CDN. I couldn't find any helpful resource online, neither on momentjs.com to detect if Moment js is present.

Here's my code :

<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.min.js"></script>
<script>
    // If moment.js is not loaded, use the fallback
    if () { 
        document.write('<script src="assets/plugins/moment/moment.min.js"><\/script>');
    }
</script>

Upvotes: 13

Views: 16270

Answers (2)

Abdul Hameed
Abdul Hameed

Reputation: 992

I prefer writing the one-liner found this answer

<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.js"></script>
<script>window.moment || document.write('\x3Cscript src="assets/plugins/moment/moment.min.js" type="text/javascript">\x3C/script>')</script>

Upvotes: 1

iamalismith
iamalismith

Reputation: 1571

Moment attaches itself to the window when it loads, so you could do:

<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.js"></script>
<script>
    if (!window.moment) { 
        document.write('<script src="assets/plugins/moment/moment.min.js"><\/script>');
    }
</script>

Upvotes: 18

Related Questions