Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ReferenceError: Can't find variable: $

I am using jQuery. This is my coding on my main page:

<script type="text/javascript" src="script.js"> 
</script>

and my script.js is:

$(document).ready(function(){    
     $("#title").click(function () {
        alert("Works!");
    });
});

My full coding can be found here: http://pastie.org/8676656.

Using a tool on the browser, I found an error in my javascript code:

ReferenceError: Can't find variable: $

on line:

$(document).ready(function() {

Any help would be appreciated.

like image 740
Cheetaiean Avatar asked Jan 28 '14 21:01

Cheetaiean


People also ask

What is a ReferenceError in Javascript?

The ReferenceError object represents an error when a variable that doesn't exist (or hasn't yet been initialized) in the current scope is referenced. ReferenceError is a serializable object, so it can be cloned with structuredClone() or copied between Workers using postMessage() .

What is uncaught ReferenceError in Javascript?

The Javascript ReferenceError occurs when referencing a variable that does not exist or has not yet been initialized in the current scope. Reference errors in Javascript are of a few different types, with variations of each, that may get triggered in code.


2 Answers

You have to import jQuery before using it:

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>

Notice it is using // as protocol (not http:// or https://), it means: if your .html file is at a http:// server, it will get jQuery from http://ajax.google..., and if it is at a https:// server, it will get it from https://ajax.google....


Note: If, while developing, you open your HTML file in your browser instead of in a server, you should specify the protocol, as in this answer, otherwise it won't work:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>

Also, you should, if possible, place your .js files at the bottom of the page, right before closing </body>. See more in here.

like image 111
acdcjunior Avatar answered Sep 29 '22 10:09

acdcjunior


Import jQuery before your code

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"><script>
like image 21
Geo Avatar answered Sep 29 '22 10:09

Geo