Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Javascript won't run on github pages site

So the javascript used to work on my github pages site but it doesn't work anymore after I delete the repository and tried to re-uplaod the project with some changes. Here is the repo. Here is the site.

like image 276
Austin Magnuson Avatar asked Aug 09 '16 13:08

Austin Magnuson


1 Answers

You are serving the site over HTTPS but trying to load jQuery over HTTP. This is not allowed.

<!-- wrong -->
<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>

Replace http with https and you should be good to go. This error is easily discoverable if you open the Javascript Console in your browser (usually under F12).

<!-- correct -->
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>

But what about protocol relative links?

You could also use this once-popular syntax:

<!-- meh -->
<script src='//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>

but it's cargo cult at this point. Spelling out https://cdnjs.cloudflare.com/ is better.

Here's why:

  • Your CDN offers HTTPS! That's wonderful. Make sure to use it. Even if your site is delivered via plain http (but why?) your users can still at least get the assets securely.
  • The page will still work if you open it locally via a file:// URI, which is sometimes helpful during development.
  • The performance impact is negligible and you have no reason to worry about it.

Some advice from Paul Irish, one of developers behind Chrome:

If the asset you need is available on SSL, then always use the https:// asset.

It’s always safe to request HTTPS assets even if your site is on HTTP, however the reverse is not true.

like image 191
Kos Avatar answered Oct 04 '22 21:10

Kos